Python 3.x 尝试使用sentinel控制的循环来添加和平均一组整数
我想把一组数字加在一起,最后一个数字是哨兵(Python 3.x 尝试使用sentinel控制的循环来添加和平均一组整数,python-3.x,while-loop,sentinel,Python 3.x,While Loop,Sentinel,我想把一组数字加在一起,最后一个数字是哨兵(999)。如果键入了999,则输入循环结束并打印答案,否则将继续循环并添加输入。但当我运行程序时,它会显示错误: Traceback (most recent call last): File "lab9.py", line 4, in <module> sum += kbInput TypeError: unsupported operand type(s) for +=: 'builtin_function_or_metho
999
)。如果键入了999
,则输入循环结束并打印答案,否则将继续循环并添加输入。但当我运行程序时,它会显示错误:
Traceback (most recent call last):
File "lab9.py", line 4, in <module>
sum += kbInput
TypeError: unsupported operand type(s) for +=: 'builtin_function_or_method' and 'int'
sum
是内置函数。使用名称求和
并在循环之前将其设置为零:
sum_ = 0
count = 0
while True:
kbInput = float(input())
if kbInput == 999:
break
sum_ += kbInput
count += 1
average = sum_ / count
print("Sum", sum_)
print("Average", average)
sum_ = 0
count = 0
while True:
kbInput = float(input())
if kbInput == 999:
break
sum_ += kbInput
count += 1
average = sum_ / count
print("Sum", sum_)
print("Average", average)