【发布时间】:2010-12-25 09:53:08
【问题描述】:
我正在尝试在 python 中读取 gunzipped 文件 (.gz),但遇到了一些问题。
我使用 gzip 模块来读取它,但文件被编码为 utf-8 文本文件,因此最终它读取了无效字符并崩溃。
有人知道如何读取编码为 utf-8 文件的 gzip 文件吗?我知道有一个编解码器模块可以提供帮助,但我不明白如何使用它。
谢谢!
import string
import gzip
import codecs
f = gzip.open('file.gz','r')
engines = {}
line = f.readline()
while line:
parsed = string.split(line, u'\u0001')
#do some things...
line = f.readline()
for en in engines:
print(en)
【问题讨论】:
-
你能发布你到目前为止的代码吗?
-
你能把 utf-8 文件转换成 ascii 然后再解压吗?嗯....
-
如果您遇到 UnicodeDecodeError,请参阅此相关帖子,其中显示了 open('errors') 参数的使用,并在使用 ISO-8859-1 (latin-1) 时提出了警告编码:stackoverflow.com/questions/35028683/…