我想从csv(文本)文件中读取(在Python 2.7中),它是7z压缩的。我不想对整个(大)文件进行解压缩,而是对这些行进行流式处理。如何从使用7z压缩的文本文件读取?
我试过pylzma.decompressobj()
失败。我收到一个数据错误。请注意,此代码还没有通过读取线线:
input_filename = r"testing.csv.7z"
with open(input_filename, 'rb') as infile:
obj = pylzma.decompressobj()
o = open('decompressed.raw', 'wb')
obj = pylzma.decompressobj()
while True:
tmp = infile.read(1)
if not tmp: break
o.write(obj.decompress(tmp))
o.close()
输出:
o.write(obj.decompress(tmp))
ValueError: data error during decompression
你为什么不发布您的代码和一个示例文件,这样我们就可以复制你的错误,可以看到我们可以如何帮助? –
.7z文件是可以包含多个文件的容器(档案文件),那么您想要读取的'tests.7z'内的文件名是什么? – martineau
@martineau,testing.csv – Yariv