【发布时间】:2019-01-25 21:59:53
【问题描述】:
我已经有一段时间没有编码并试图重新使用 Python。我正在尝试编写一个简单的程序,通过将每个数组元素值加到一个总和中来对数组求和。这就是我所拥有的:
def sumAnArray(ar):
theSum = 0
for i in ar:
theSum = theSum + ar[i]
print(theSum)
return theSum
我收到以下错误:
line 13, theSum = theSum + ar[i]
IndexError: list index out of range
我发现我想做的事情显然就是这么简单:
sum(ar)
但显然我并没有正确地遍历数组,我认为这是我需要正确学习以用于其他目的的东西。谢谢!
【问题讨论】:
-
i是您在数组中循环的项目的值...所以如果您有 3 个项目[10, 11, 12]您正在尝试访问ar[10]的第一次迭代这不起作用...您可以只使用内置的sum,例如:sum(ar)? -
@JonClements 您会注意到我在原始问题中提到 sum(ar) 是一种更简单的方法。我在问如何正确迭代数组元素。
-
(抱歉-不知何故瞥了一眼)您可以将循环更改为
theSum += ar... -
如果要使用每个元素的INDEX,而不是列表中每个元素的值,可以使用enumerate
标签: python arrays python-3.x sum