【问题标题】:TypeError: 'zip' object is not callable in Python 3.xTypeError: 'zip' 对象在 Python 3.x 中不可调用
【发布时间】:2018-05-14 23:03:49
【问题描述】:

我正在尝试在 Python 3.5 中压缩 2 个简单列表,但不知道如何访问其中的内容。我现在读到zip() 是一个生成器,如果我想存储内容,我必须调用list(zip())。但是,我在执行此操作时遇到了错误。

例如:

row = [1, 2, 3]
col = ['A', 'B', 'C']
z = zip(row, col)

当我调用“z”时,我看到以下内容:

>>> z
<zip object at 0x0283C8F0>

但是当我调用list(z) 时,我收到以下错误:

>>> list(z)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: 'zip' object is not callable

我在尝试将列表分配给变量时也遇到了同样的错误,例如:

l = list(zip(row, col))

抱歉,如果这个问题已经得到解答,但我终生无法通过搜索找到解决方案。任何想法将不胜感激!

【问题讨论】:

标签: python python-3.x typeerror


【解决方案1】:

当您将 list 重新定义为 zip() 时会发生这种情况(这可能是您所做但没有向我们展示的):

>>> list = zip()

现在listzip 对象(不是zip 类)

>>> list(z)

现在您正在尝试调用 zip 对象

Traceback (most recent call last):
  File "<string>", line 301, in runcode
  File "<interactive input>", line 1, in <module>
TypeError: 'zip' object is not callable
>>> 

只是

del list

(或从一个新的解释器开始)

一切恢复正常

【讨论】:

  • 这解决了它!感谢您提供快速而翔实的答案。
猜你喜欢
  • 2021-10-14
  • 2023-04-03
  • 1970-01-01
  • 1970-01-01
  • 2017-01-22
  • 2018-08-02
  • 2015-09-14
  • 2020-03-24
相关资源
最近更新 更多