我尝试打印sum(x)时出错

时间:2014-03-12 14:31:19

标签: python int typeerror iterable

在完成循环后,我试图找到sum的{​​{1}}。我已经阅读了有关此主题的所有答案,但我的代码仍然存在问题。有人可以说明如何让这些小代码起作用吗?

int

3 个答案:

答案 0 :(得分:1)

" int"的总和是什么?意思?如果你想要x的最终结果,它似乎只是10.如果你想要x的迭代总和,也许你可以试试这个:

x = 0
a = 0
while x < 10:
  x = x + 5
  a = a + x
print a

答案 1 :(得分:0)

print sum(x)

会提高

TypeError: 'int' object is not iterable

因为xint,而int不可迭代。在while循环后,x的值为10.尝试

print x

代替。


如果您想要ints(复数)x的总和,那么

x = 0
total = 0
while x < 10:
    x = x + 5
    total = total + x
print total

打印15.然而,有一种更简单的方法。例如,您可以使用range生成x

的值
In [3]: range(5, 15, 5)
Out[3]: [5, 10]

In [4]: sum(range(5, 15, 5))
Out[4]: 15

range(start,end,step)告诉Python生成从start开始的数字序列,其前缀为end(不包含),增量为{​​{1}}。

因此上面的step可以简化为

while-loop

答案 2 :(得分:0)

x = 0
a = 0
while x < 10:
    x = x + 5
    a = sum([a, x])
    print a