Python 3.x 类型错误:';列表';对象不可调用。sum()函数

Python 3.x 类型错误:';列表';对象不可调用。sum()函数,python-3.x,Python 3.x,有人能解释为什么jupyter笔记本在尝试执行以下代码时会说:“TypeError:‘list’对象不可调用”: a = [3, 2, 6, 2, 2, 1, 4, 2, 2, 0, 3, 6, 7, 4, 6, 3] b = sum(a) print(b) 但是PyCharm返回:53 Jupyter notebook允许您逐行运行代码,这意味着如果您在其中一个单元格中定义了一个名为“sum”的变量,并且该变量中有一个列表,“sum”函数将被覆盖,直到您重新启动内核,并且只知道该变量存在,无

有人能解释为什么jupyter笔记本在尝试执行以下代码时会说:“TypeError:‘list’对象不可调用”:

a = [3, 2, 6, 2, 2, 1, 4, 2, 2, 0, 3, 6, 7, 4, 6, 3]
b = sum(a)
print(b)
但是PyCharm返回:53


Jupyter notebook允许您逐行运行代码,这意味着如果您在其中一个单元格中定义了一个名为“sum”的变量,并且该变量中有一个列表,“sum”函数将被覆盖,直到您重新启动内核,并且只知道该变量存在,无法调用。

您可能将
sum
定义为Jupyter笔记本中前面代码中的列表。若要覆盖该值,只需在单元格中运行
del sum
,这将删除变量,但不会删除内置函数。切勿将内置函数的名称用作变量名称-它们会隐藏内置函数-在您的情况下:
sum()
。使用
print(type(sum))
检查-如果它是其他函数,那么您将它用作变量,是的,非常感谢!