python刷题
输入时的判断:
有的题目需要对输入的某一个或其中一些数据进行及时的判断,否则就会出现“非零返回”的问题,例如4-7,需要对输入的n先进行判断,当n>0时,才能输入后面的数据,否则结果直接为0.
n = int(input())
sumn = 0
cnt = 0
if n > 0 :
s = input() # 当n>0时再输入身高数据进行后续计算
num = [int(i) for i in s.split()]
if num == []:
avg = 0
cnt = 0
else:
for i in range(n):
sumn += num[i]
if num[i] >= 60:
cnt += 1
avg = sumn / n
else: # 否则结果直接赋值0
avg = 0
cnt = 0
print("average = %.1f" % avg)
print("count = %d" % cnt)
extend() 函数用于在列表末尾一次性追加另一个序列中的多个值(用新列表扩展原来的列表)。
while循环实现数据的按行(回车)输入。
s = []
cnt = 0
while True: # 利用循环实现回车输入
l_s = list(input()) # 将输入的数据转化成列表
cnt += 1 # 循环加一即回车加一
s.extend(l_s) # 将按行输入的数据一次性追加到s列表中
if cnt + len(s) > 10:
cnt -= 1 # 去除满足条件时“代表输入结束”的最后一个回车
break
字符的统计,除isalpha(),isdigit()用来判断是否为字母、数字外,还有isspace()可以用来判断是否为空格。
s.isalpha()
s.isdigit()
s.isspace()