TypeError: 'list' object is not callable BUT works in IDLE
本问题已经有最佳答案,请猛点这里访问。
以下部分代码在空闲控制台中工作,但在.py脚本内运行时输出错误。所以我不能理解原因。
1 | [results[i:i+3] for i in range(0,len(results),3)] |
其中结果定义如下:
1 | results = [1,2,3,4,5,6,7,8,9] |
在空闲状态下,不提示任何错误:
1 2 3 | >>> 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]] |
我的想法是将列表的一部分分组成一个子列表,如这里建议的:创建子列表
谢谢!
您的代码本身工作正常。
1 2 3 | >>> 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]] |
您可能将名称
1 2 3 4 5 | >>> 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试图在这里执行