Python,为什么这个sum函数不起作用

时间:2011-11-13 01:41:08

标签: python

为什么这个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)

1 个答案:

答案 0 :(得分:0)

首先,length未在任何地方定义,但您尝试在while条件下使用它。那会导致你可能看到的错误。您可以使用len(list)获取列表的长度。

其次,你的身体实际上并没有使用列表值:(list[counter] +total)没有做任何事情,因为它没有分配给任何东西。

最后,total = total + counter没有添加值,而是添加每个值的位置。因此,在此示例中:0 + 1 + 2,如果您修复了我之前提到的length问题,那么您最终会得到3,而不是9的正确值}。

<强>更新

最后(再次),您甚至没有使用my_list = [3,3,3]测试函数,也没有提到您在上面定义的函数。相反,你只是创建一个列表。