Python 如何排除负数?
我不知道如何防止负数影响最终计算 我不知道还能尝试什么Python 如何排除负数?,python,list,loops,Python,List,Loops,我不知道如何防止负数影响最终计算 我不知道还能尝试什么 for month in months: rainfall_answer = int(input("What was the rainfall in {}? ".format(month))) if rainfall_answer < 0: print("Input must be positive.") rainfall_answer = int(input("What was the
for month in months:
rainfall_answer = int(input("What was the rainfall in {}? ".format(month)))
if rainfall_answer < 0:
print("Input must be positive.")
rainfall_answer = int(input("What was the rainfall in {}? ".format(month)))
elif rainfall_answer > 0:
rainfall.append(rainfall_answer)
以月份为单位的月份:
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
如果降雨量小于0:
打印(“输入必须为正。”)
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
elif降雨量\u答案>0:
雨量.附加(雨量\答案)
我希望无效输入不会包含在最终结果中。如果我理解正确,您可以使用
while
循环反复提示用户,直到输入为非负:
for month in months:
rainfall_answer = int(input("What was the rainfall in {}? ".format(month)))
while rainfall_answer < 0:
print("Input must be positive.")
rainfall_answer = int(input("What was the rainfall in {}? ".format(month)))
rainfall.append(rainfall_answer)
以月份为单位的月份:
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
当降雨量小于0时:
打印(“输入必须为正。”)
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
雨量.附加(雨量\答案)
您需要循环输入
以月份为单位的月份:
尽管如此:
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
如果降雨量\u答案>=0:
中断#退出while循环,因为您得到了有效的输入
其他:
打印('输入必须为正')
雨量.附加(雨量\答案)
您就快到了,您可以使用的一个技巧是将降雨\u答案
设置为负值(无效),然后您可以重复输入
读取,直到降雨\u答案
中的值为正值:
以月份为单位的月份:
降雨量-答案=-1
当降雨量小于0时:
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
雨量.附加(雨量\答案)
您可以使用while循环来循环输入,还需要使用try-except块来处理和引发异常,在这种情况下不包括负数
for month in months:
while True:
try:
rainfall_answer = int(input("What was the rainfall in {}? ".format(month)))
if rainfall_answer < 0:
raise ValueError
break
except ValueError:
print ("Input must be positive")
rainfall.append(rainfall_answer)
以月份为单位的月份:
尽管如此:
尝试:
Rainsion_answer=int(输入({}中的降雨量是多少?.format(month)))
如果降雨量小于0:
升值误差
打破
除值错误外:
打印(“输入必须为正”)
雨量.附加(雨量\答案)