我正在做一种简单的Python练习,其想法是创建一个添加列表编号的函数。问题是,当我运行它时,for
循环会跳过几个整数,而我不知道为什么。
def simplearraysum(ar):
sum = 0
for number in ar:
sum = sum + number
ar.remove(number)
return sum
list = [1, 2, 3, 4, 10, 11]
print(simplearraysum(list))
输出为14,但应为31。
答案 0 :(得分:1)
迭代列表时,请勿修改列表。 for
循环将处理列表中的元素。只需注释行,您将获得正确的输出:
def simplearraysum(ar):
sum = 0
for number in ar:
sum = sum + number
#ar.remove(number)
return sum
list = [1, 2, 3, 4, 10, 11]
print(simplearraysum(list))