gpt4 book ai didi

python - GZip 在 Python 脚本中读取文件时出错

转载 作者:太空宇宙 更新时间:2023-11-03 18:14:12 25 4
gpt4 key购买 nike

我有一个 .gz 文件,我正在尝试打开并解析该文件以将其放入数据库中。运行下面的代码...

def process_file(filename):
with gzip.GzipFile(filename, 'rU', 9) as uncompressed_file:
uncompressed_file.next() # Skip the headers

for line in uncompressed_file:
line = line.replace('\n', '').split('\t')
# Do some more stuff with the line

生成此错误...

    File "path/to/script", line 169, in process_file
uncompressed_file.next() # Skip the headers
File "/usr/lib/python2.7/gzip.py", line 450, in readline
c = self.read(readsize)
File "/usr/lib/python2.7/gzip.py", line 256, in read
self._read(readsize)
File "/usr/lib/python2.7/gzip.py", line 307, in _read
uncompress = self.decompress.decompress(buf)
error: Error -3 while decompressing: invalid distance too far back

特别奇怪的是,代码在我的本地计算机(Mac OSX 10.9.4)上完美运行,但在我的服务器(Ubuntu 12.04.4 LTS)上运行不正常。

任何见解都值得赞赏,因为我目前没有想法。

最佳答案

已解决此问题。似乎并非所有平台都完全支持在 gzip.open 或 gzip.GzipFile 上使用“with”语法。

目前还不清楚为什么它不能一致工作,但转向此代码解决了问题:

def process_file(filename):
f = gzip.open(filename, 'rb')
f.next() # Skip the headers

for line in f:
line = line.replace('\n', '').split('\t')

f.close()

关于python - GZip 在 Python 脚本中读取文件时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25274477/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com