【问题标题】:Cannot import name izip [duplicate]无法导入名称 izip [重复]
【发布时间】:2018-10-18 18:21:48
【问题描述】:

我正在尝试使用以下代码从 csv 文件转置矩阵:

import csv
from itertools import izip
a = izip(*csv.reader(open("TDM.csv", "rb")))
csv.writer(open("output.csv", "wb")).writerows(a)

很遗憾出现以下错误:

from itertools import izip
ImportError: cannot import name 'izip'

我已经浏览了论坛,但找不到适合我的答案。

【问题讨论】:

    标签: python csv


    【解决方案1】:

    我猜你使用的是 Python 3。

    使用 zip() 内置代替。

    在 Python 3 中没有 itertools.izip(),因为 zip() 内置函数的行为类似。

    【讨论】:

    • 使用 zip() 仍然给我一个错误: from itertools import zip ImportError: cannot import name 'zip' Code: import csv from itertools import zip a = zip(*csv.reader(open(" TDM.csv", "rb"))) csv.writer(open("output.csv", "wb")).writerows(a)
    • @Nils_Denter 不要导入它。它是a builtin - 它始终可用(除非被赋值覆盖)。
    • 好的,现在它可以工作了,但是我得到一个新错误:a = zip(*csv.reader(open("TDM.csv", "rb"))) 错误:迭代器应该返回字符串,不是字节(您是否以文本模式打开文件?)
    • @Nils_Denter 是吗?我可以将“b”视为“二进制”。 ;)
    • 啊,谢谢,我真的是 python 新手。我的错。
    猜你喜欢
    • 2011-12-02
    • 2019-04-16
    • 2017-06-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-06-09
    相关资源
    最近更新 更多