【发布时间】:2020-11-05 02:58:12
【问题描述】:
我为什么要这样写这个程序(第一种方式):
sum = 0
for i in range(1, 10):
if (i % 3 == 0) or (i % 5 == 0):
sum = sum + i
print(sum)
为什么我不能这样写?(第二种方式):
for i in range(1, 10):
if (i % 3 == 0) or (i % 5 == 0):
print(sum(i))
第二种方式我收到此错误:
TypeError: 'int' 对象不可迭代
这个错误到底是什么意思? 我可以在哪里使用 sum 函数?哪里没有?
我必须列一个列表才能使用 sum 函数吗?
非常感谢
【问题讨论】:
-
第二个应该是
print(i),因为你只有一个值 -
您已将 inbuild 函数
sum覆盖为 int 变量sum,因此由于您无法遍历整数,因此会收到此错误