【发布时间】:2015-05-08 15:27:45
【问题描述】:
我正在尝试在 python 中运行一个 while 循环。我可以让它大部分正常运行,但部分代码无法正常运行,我一直在尝试不同的方法来解决它,但我无法让它完全按照我的意愿运行。
我正在尝试编写一个重复读取数字直到用户输入“完成”的程序。输入“完成”后,打印出总数、计数和平均值。如果用户输入的不是数字,请使用 try 和 except 检测他们的错误并打印错误消息并跳到下一个数字
这是我的代码:
total=0
number=None
count=0
while True:
num=raw_input('Enter a number: ')
print 'Enter a number',num
for intervar in num:
count=count+1
if num=='done':
break
else:
try:
number=int(num)
if number is int:
continue
except:
print 'bad data'
total=total+number
print 'Enter a number:',number
print 'Total is',total
print 'Count is',count
当我输入 3,4,5 这段代码的输出是:
Enter a number 3
Enter a number 4
Enter a number 5
Enter a number nine
bad data
Enter a number done
Enter a number: 5
Total is 5
Count is 12
代码应该是这样的
Enter a number 3
Enter a number 4
Enter a number 5
Enter a number bad data
Enter a number done
Total is 12
Count is 3
【问题讨论】:
-
你没有设置你的总数,除了一次。总计在 for 循环之外
标签: python while-loop