目录
Python提供了gzip、zipfile、tarfile等模块用于文件的压缩和解压缩操作。本文将介绍如何使用gzip模块实现GZ文件的压缩和解压缩操作。
压缩文件生成GZ文件
下载gzip.exe打包工具
将gzip.exe与要打包的文件置于同一目录下,打开cmd命令行
输入命令
F:\>gzip 4b29d5f6efa8eb1ae98277be1fb30b90_.0.xml
也可将工具gzip.exe置于系统盘下的Windows目录下
打开命令行 将目录切换到要打包的文件所在目录下
还是输入以下命令即可将指定文件进行压缩
F:\>gzip 4b29d5f6efa8eb1ae98277be1fb30b90_.0.xml
在代码中实现:
sc_cmd = "%s %s"%(gzip_file,target_file) gz_pipe = os.popen(sc_cmd) gz_pipe.close()
通过程序实现GZ文件压缩
使用gzip模块的GzipFile类可以实现GZ文件的压缩操作。GzipFile类的构造函数需要传入两个参数,第一个参数是压缩后的文件名,第二个参数是打开模式(’wb’表示以二进制写入模式打开文件)。
下面是一个简单的例子,将一个300多MB的文件压缩成GZ文件:
import gzip source_file = "D:\steverocket\CentOS7.zip" target_file = "D:\steverocket\CentOS7.gz" with open(source_file, 'rb') as f_in: with gzip.open(target_file, 'wb') as f_out: f_out.write(f_in.read())
上面的代码中,首先使用open()函数打开一个文本文件source_file,以二进制读取模式打开。然后使用gzip.open()函数创建一个GzipFile对象,以二进制写入模式打开,压缩后的文件名为target_file。最后,使用f_out.write()方法将读取到的数据写入压缩文件中。程序执行完后打开文件,文件未压缩坏。
GZ文件解压缩
使用gzip模块的GzipFile类也可以实现GZ文件的解压缩操作。GzipFile类的构造函数需要传入两个参数,第一个参数是要解压的文件名,第二个参数是打开模式(’rb’表示以二进制读取模式打开文件)。
下面是一个简单的例子,将一个GZ文件解压缩:
import gzip TARGET_FILE = "D:\steverocket\CentOS7.gz" TARGET_FILE_BACK = "D:\steverocket\CentOS7_back.zip" def decompression_gzfile(): with gzip.open(TARGET_FILE, 'rb') as f_in: with open(TARGET_FILE_BACK, 'wb') as f_out: f_out.write(f_in.read())
上面的代码中,首先使用gzip.open()函数打开一个GZ文件TARGET_FILE,以二进制读取模式打开。然后使用open()函数创建一个文本文件TARGET_FILE_BACK,以二进制写入模式打开。最后,使用f_out.write()方法将读取到的数据写入文本文件中。程序执行完后打开文件,文件未压缩坏。
总结
本文介绍了如何使用gzip模块实现GZ文件的压缩和解压缩操作。在压缩时,使用GzipFile类创建一个压缩文件,并使用write()方法将数据写入压缩文件中;在解压缩时,使用GzipFile类打开一个压缩文件,并使用read()方法读取数据,然后将数据写入解压缩后的文件中。
Python实战:python操作GZ文件,实现文件压缩与解压缩
更多资料 · 微信公众号搜索【CTO Plus】关注后,获取更多,我们一起学习交流。
关于公众号的描述访问如下链接
关于Articulate“做一个知识和技术的搬运工。做一个终身学习的爱好者。做一个有深度和广度的技术圈。”一直以来都想把专业领域的技https://mp.weixin..com/s/0yqGBPbOI6QxHqK17WxU8Q
今天的文章
python gzip压缩_python读取压缩包中的所有文件分享到此就结束了,感谢您的阅读。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
如需转载请保留出处:https://bianchenghao.cn/80825.html