首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >python未使用gzip读取gzip文件

python未使用gzip读取gzip文件
EN

Stack Overflow用户
提问于 2019-03-03 16:52:06
回答 1查看 2.6K关注 0票数 1

我正在尝试制作一个标记器,我有一个文件,我正在尝试用gzip读取它。但它会给出以下错误:

代码语言:javascript
复制
Traceback (most recent call last):
  File "extract_sends.py", line 14, in <module>
    main()
  File "extract_sends.py", line 12, in main
    file_content = f.read()
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/gzip.py", line 276, in read
    return self._buffer.read(size)
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/gzip.py", line 463, in read
    if not self._read_gzip_header():
  File "/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/gzip.py", line 411, in _read_gzip_header
    raise OSError('Not a gzipped file (%r)' % magic)
OSError: Not a gzipped file (b'# ')

这是我的代码,我才刚刚开始,但是如果python不能读取文件,我就不会走远了。

代码语言:javascript
复制
import gzip
import sys
import re

def main():
    file = sys.argv[0]
    with gzip.open(file, 'rt') as f:
        file_content = f.read()

main()

该文件为.txt.gz文件

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-03-03 16:54:41

您应该尝试有史以来最简单的调试技术:打印要使用的值。

无论如何,如果您这样做了,您将看到sys.argv[0]不是您在命令行上放在运行代码的命令后面的文件名参数-那就是sys.argv[1]

因此,改变:

代码语言:javascript
复制
file = sys.argv[0]

至:

代码语言:javascript
复制
file = sys.argv[1]
print( “Reading from file”,file )
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54967120

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档