【发布时间】:2014-01-03 07:19:27
【问题描述】:
我试过了
with zipfile.ZipFile("5.csv.zip", "r") as zfile:
for name in zfile.namelist():
with zfile.open(name, 'rU') as readFile:
line = readFile.readline()
print(line)
split = line.split('\t')
它回答:
b'$0.0\t1822\t1\t1\t1\n'
Traceback (most recent call last)
File "zip.py", line 6
split = line.split('\t')
TypeError: Type str doesn't support the buffer API
如何以 unicode 而不是 b 打开文本文件?
【问题讨论】:
-
在我看来,zip 库不支持
open的编码参数。如果这是正确的,我认为您将不得不使用codecs.EncodedFile包装器或手动解码每一行。 -
您知道文件的正确编码吗?对我来说它看起来像 utf-8,但猜测是否可以避免它是个坏主意。
标签: python file-io python-3.x unicode zip