我有一个列表,
y = [ 39343.0, 46205.0, 37731.0, 43525.0, 39891.0, 56642.0, 60150.0, 54445.0, 64445.0, 57189.0, 63218.0, 55794.0, 56957.0, 57081.0, 61111.0, 67938.0, 66029.0, 83088.0, 81363.0, 93940.0, 91738.0, 98273.0, 101302.0, 113812.0, 109431.0, 105582.0, 116969.0, 112635.0, 122391.0, 121872.0]
我正在尝试计算列表的总和:
Sum_y = sum(y)
它给我错误。
y = [ 39343.0, 46205.0, 37731.0, 43525.0, 39891.0, 56642.0, 60150.0, 54445.0, 64445.0, 57189.0, 63218.0, 55794.0, 56957.0, 57081.0, 61111.0, 67938.0, 66029.0, 83088.0, 81363.0, 93940.0, 91738.0, 98273.0, 101302.0, 113812.0, 109431.0, 105582.0, 116969.0, 112635.0, 122391.0, 121872.0]
Sum_y = sum(y)
答案 0 :(得分:1)
这听起来像在代码中有一行,其中有一个名为sum
的变量,如下所示:
sum = [1,2,3]
,然后放下一个列表,例如:
y = [4,5,6]
,然后尝试在列表中找到值的sum
:
sum_y = sum(y)
那会给你错误:
TypeError: 'list' object is not callable
因为您已经用列表覆盖了默认的sum方法。
所以不要使用变量名sum
。任何默认方法或类名都一样。您应该避免覆盖任何默认的Python方法/类。
答案 1 :(得分:0)
我尝试了您的代码,它不会为我抛出任何错误。
y = [ 39343.0, 46205.0, 37731.0, 43525.0, 39891.0, 56642.0, 60150.0, 54445.0, 64445.0, 57189.0, 63218.0, 55794.0, 56957.0, 57081.0, 61111.0, 67938.0, 66029.0, 83088.0, 81363.0, 93940.0, 91738.0, 98273.0, 101302.0, 113812.0, 109431.0, 105582.0, 116969.0, 112635.0, 122391.0, 121872.0]
Sum_y = sum(y)
o/p: 2280090.0
有关总和的详细信息:https://docs.python.org/3/library/functions.html#sum