我正面临一个问题,试图在python中求和列表的所有元素而不使用sum()函数。所以,事情是,当我运行我的代码,我能够得到所需的结果,但下面出现这个错误
IndexError: list index out of range
这是我的代码:
numbers = [4,8,3,1,-3,3,-5,1,2,-8]
sum = numbers[0]
i = 0
for number in numbers:
i = i + 1
sum = sum + numbers[i]
print(sum)
根据错误信息,问题在第6行,但我不明白是什么问题。如果有人能帮助我,我将不胜感激。
您在使用i
之前对其进行了递增,因此它的值从1到len(numbers)
而不是从0到len(numbers)-1
。
可以使用在循环中声明的number
变量,而不是索引到列表中。该变量取循环遍历列表中每个元素的值。
for number in numbers:
total = total + number
print(total)