我是Python的新手,我确信我做错了 - 我想问一个用户三个数字并打印他们的总和,这是我当前的代码:
for i in range(0, 3):
total = None
num = input('Please enter number {}:'.format(str(i)))
total += num
顺便说一句,total = None是尝试声明变量所以我可以在不设置值的情况下使用它? 我明白了
Traceback (most recent call last):
File "<pyshell#20>", line 4, in <module>
total += num
TypeError: unsupported operand type(s) for +=: 'NoneType' and 'str'
答案 0 :(得分:0)
你不应该total = None
。 NoneType
不能用于添加。
错误消息提示了一个额外的问题:根据您的描述,您尝试添加3个数字,但内置input()
的返回类型是str
。所以这就是你应该写的:
total = 0
for i in range(0, 3):
num = input('Please enter number {}:'.format(str(i)))
total += int(num)
所有要点:
total
设置为零。只在循环外设置一次