python - TypeError:“列表”对象在尝试访问反向范围时不可调用
问题描述
我正在尝试运行此代码以在 jupyter notebook 中获得 tic-tac 对角线获胜者。
game = [[1, 0, 1],
[0, 1, 2],
[1, 2, 1]]
cols = list(reversed(range(len(game))))
rows = range(len(game))
for idx in rows:
print(idx, cols[idx])
错误
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-250-b70a53369f72> in <module>
6
7
----> 8 cols = list(reversed(range(len(game))))
9 rows = range(len(game))
10
TypeError: 'list' object is not callable
解决方案
你在list
某处隐藏了这个名字。在您的代码中搜索如下所示的行:
list = <something>
您可以通过在您之前插入一行来轻松诊断cols = list(...)
:
print(type(list))
如果您没有对此进行遮蔽,您将看到<class 'type'>
出现在您的命令行上。我打赌你会看到<class 'list'>
(或完全不同的东西)
尽量不要隐藏内置插件,因为它会导致这样的错误。
推荐阅读
- ruby - 如何分别打印我的 CLI 项目的名称和 URL
- php - 找不到 PHPMailer 类,即使我使用了 PHPMailer\PHPMailer\PHPMailer 并且需要 /vendor/autoload.php,路径也不存在
- python - 如何在单独的类中引用我的窗口变量?
- shell - 如何删除以逗号分隔的 10 列的行中的换行符
- android - 弹出到本机项目后无法为 android 构建应用程序
- javascript - 如何在 AngularJS 的 FORM 中的多个选择选项中设置值?
- reactjs - 使用 React 在 Jest 上使用导入类时如何修复错误
- azure-cosmosdb - Azure 数据工厂中的加入问题
- javascript - 在 javascript 中生成一个类以匹配现有的 sass 类名
- html - 每次我在页面顶部创建一个简单的导航栏时,该栏都太靠右了