Python3代码在循环时输出错误
它是用python 3编写的。代码试图将所有输入整数存储到一个列表中,并找到最小值、最大值和平均值。是什么导致这里的输出平均值出错Python3代码在循环时输出错误,python,Python,它是用python 3编写的。代码试图将所有输入整数存储到一个列表中,并找到最小值、最大值和平均值。是什么导致这里的输出平均值出错 from statistics import mean, median def main(): integers = [] integer = 0 while (1): input_str = input('Enter a value (0 to end): ') try: in
from statistics import mean, median
def main():
integers = []
integer = 0
while (1):
input_str = input('Enter a value (0 to end): ')
try:
integer = int(input_str)
except ValueError:
print('Invalid input. Type a legit integer.')
if integer == 0:
if integers == []:
print('No integer stored.')
else:
print('Min: {0}\nMax: {1}\nAvg: {2:.1f}\n'.format(min(integers),max(integers),sum(integers)/len(integers)))
break
elif integer >= -65535 and integer <= 65535:
integers.append(integer)
else:
print('The integer is out of range.')
main()
当您遇到错误时,应忽略下一个代码段并避免执行下一行,否则您将继续运行下一行并意外发生某些事情 因此,当发生
ValueError
时,您应该添加代码dojump
try:
integer = int(input_str)
except ValueError:
print('Invalid input. Type a legit integer.')
continue #important
不要以图片的形式发布代码,而是以文本的形式发布。不要忘记以新用户的身份发布代码。正如其他用户所说,请在此处包含代码。也就是说,试着打印整数列表,看看它最后是什么样子。我认为这个问题与输入错误时整数没有被重置有关。我不明白为什么这个代码不起作用。请提供一份报告。
try:
integer = int(input_str)
except ValueError:
print('Invalid input. Type a legit integer.')
continue #important