我在完成循环后试图找到int
的sum
。我已阅读关于此主题的所有答案,但我仍然遇到了我的代码问题。有人可以阐明如何让这些小代码起作用吗?当我尝试打印总和(x)时出现错误
x = 0
while x < 10:
x = x + 5
a = sum([x])
print a
我在完成循环后试图找到int
的sum
。我已阅读关于此主题的所有答案,但我仍然遇到了我的代码问题。有人可以阐明如何让这些小代码起作用吗?当我尝试打印总和(x)时出现错误
x = 0
while x < 10:
x = x + 5
a = sum([x])
print a
print sum(x)
将提高
TypeError: 'int' object is not iterable
因为x
是int
,并int
s为不迭代。在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
(不含),在step
增量。
所以上面的while-loop
可以简化成
total = sum(range(5, 15, 5))
... OP的代码没有'打印sum(x)',它使用'sum([x])' – jonrsharpe
@jonrsharpe:阅读问题的标题。 – unutbu
啊,这肯定会给'TypeError',这是它的标签。良好的OP提供代码无关的问题,如果是这样的话! – jonrsharpe
x = 0
a = 0
while x < 10:
x = x + 5
a = sum([a, x])
print a
Python版本? –
实际错误(追溯)?另外,请注意'sum([x])== x',不需要引入变量'a'。 – jonrsharpe
是什么问题?如果我将其复制并粘贴到Python解释器中,则您发布的代码可用。你甚至想要什么?什么是'(单个)整数'的总和? –