为什么这个sum函数不起作用?它的目的是对列表中的变量项进行求和
def sum_list (a_list):
length= len(a_list)
counter = 0
total= 0
while(counter < length):
(a_list[counter] +total)
total = total + counter
counter = counter + 1
return total
#testing the functions
my_list = [3,3,3]
print sum_list(my_list)
答案 0 :(得分:0)
首先,length
未在任何地方定义,但您尝试在while条件下使用它。那会导致你可能看到的错误。您可以使用len(list)
获取列表的长度。
其次,你的身体实际上并没有使用列表值:(list[counter] +total)
没有做任何事情,因为它没有分配给任何东西。
最后,total = total + counter
没有添加值,而是添加每个值的位置。因此,在此示例中:0 + 1 + 2
,如果您修复了我之前提到的length
问题,那么您最终会得到3
,而不是9
的正确值}。
<强>更新强>
最后(再次),您甚至没有使用my_list = [3,3,3]
测试函数,也没有提到您在上面定义的函数。相反,你只是创建一个列表。