TypeError:“列表”对象不可调用,但在IDLE中有效

时间:2018-10-27 16:59:48

标签: python

下面的代码部分在IDLE控制台中工作,但是在.py脚本中运行时输出错误。因此我无法理解原因。

results = [1,2,3,4,5,6,7,8,9]

其中的结果定义如下:

>>> results = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> [results[i:i+3] for i in range(0,len(results),3)]
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]

在“ IDLE”中没有错误提示:

let headers: HttpHeaders = new HttpHeaders();
headers = headers.append('Authorization', '$ACESS_TOKEN');

我的想法是按照此处的建议将列表的一部分分组为子列表:Creating sublists

谢谢!

1 个答案:

答案 0 :(得分:1)

您的代码可以正常工作。

>>> results = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> [results[i:i+3] for i in range(0,len(results),3)]
>>> [[1, 2, 3], [4, 5, 6], [7, 8, 9]]

您可能将名称rangelen分配给某个地方的列表,从而隐藏了内置的rangelen可调用对象。

>>> range = [] # don't reassign names of builtins!
>>> results = [1, 2, 3, 4, 5, 6, 7, 8, 9]
>>> [results[i:i+3] for i in range(0,len(results),3)]
[...]
TypeError: 'list' object is not callable

发生错误是因为Python试图在此处执行[](0,len(results))