我试图用python读取一个压缩文件(.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)
也许
我不明白为什么这么难。
你到底在干什么?请解释“最终它读到一个无效字符”。
应该简单到:
编辑
这个答案对
Python3
中的Python2
有效,请参见https://stackoverflow.com/a/19794943/610569上的@SeppoEnarvi的答案(它使用rt
模式进行gzip.open
)。相关问题 更多 >
编程相关推荐