Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python gzip是否有类似tarfile.extract的提取方法?_Python_Python 3.x_Gzip - Fatal编程技术网

Python gzip是否有类似tarfile.extract的提取方法?

Python gzip是否有类似tarfile.extract的提取方法?,python,python-3.x,gzip,Python,Python 3.x,Gzip,例如,tarfile.extractall(path)将内容提取到指定的目录。类似地,gzip是否有任何提取方法将gzip成员(根据标准仅包含一个文件)获取到指定目录,或者是否有任何解决方法 编辑:我不想将完整的文件读入内存不,因为gzip只是一种压缩格式,而不是存档格式,所以在gzip模块和gzip.gzip文件类中都没有提取方法。但是您没有理由将整个文件加载到内存中,您可以将其分块复制。本手册给出了一个如何压缩文件的示例,可以轻松地对其进行调整以解压缩: import gzip import

例如,tarfile.extractall(path)将内容提取到指定的目录。类似地,gzip是否有任何提取方法将gzip成员(根据标准仅包含一个文件)获取到指定目录,或者是否有任何解决方法


编辑:我不想将完整的文件读入内存

不,因为gzip只是一种压缩格式,而不是存档格式,所以在
gzip
模块和
gzip.gzip文件
类中都没有提取方法。但是您没有理由将整个文件加载到内存中,您可以将其分块复制。本手册给出了一个如何压缩文件的示例,可以轻松地对其进行调整以解压缩:

import gzip
import shutil
with open('/home/joe/file.txt', 'wb') as f_out:
    with gzip.open('/home/joe/file.txt.gz', 'rb') as f_in:
        shutil.copyfileobj(f_in, f_out)
shutil.copyfileobj
用于成批处理副本