Python实现压缩与解压gzip大文件的方法
作者:RQSLT 时间:2021-10-13 19:39:41
本文实例讲述了Python实现压缩与解压gzip大文件的方法。分享给大家供大家参考,具体如下:
#encoding=utf-8
#author: walker
#date: 2015-10-26
#summary: 测试gzip压缩/解压文件
import gzip
BufSize = 1024*8
def gZipFile(src, dst):
fin = open(src, 'rb')
fout = gzip.open(dst, 'wb')
in2out(fin, fout)
def gunZipFile(gzFile, dst):
fin = gzip.open(gzFile, 'rb')
fout = open(dst, 'wb')
in2out(fin, fout)
def in2out(fin, fout):
while True:
buf = fin.read(BufSize)
if len(buf) < 1:
break
fout.write(buf)
fin.close()
fout.close()
if __name__ == '__main__':
src = r'D:\tmp\src.txt'
dst = r'D:\tmp\src.txt.gz'
ori = r'D:\tmp\ori.txt'
gZipFile(src, dst)
print('gZipFile over!')
gunZipFile(dst, ori)
print('gunZipFile over!')
也可以简单地封装成一个类:
class GZipTool:
def __init__(self, bufSize):
self.bufSize = bufSize
self.fin = None
self.fout = None
def compress(self, src, dst):
self.fin = open(src, 'rb')
self.fout = gzip.open(dst, 'wb')
self.__in2out()
def decompress(self, gzFile, dst):
self.fin = gzip.open(gzFile, 'rb')
self.fout = open(dst, 'wb')
self.__in2out()
def __in2out(self,):
while True:
buf = self.fin.read(self.bufSize)
if len(buf) < 1:
break
self.fout.write(buf)
self.fin.close()
self.fout.close()
希望本文所述对大家Python程序设计有所帮助。
标签:Python,压缩,解压
0
投稿
猜你喜欢
浅淡BANNER设计
2010-09-25 18:37:00
Pycharm cannot set up a python SDK问题的原因及解决方法
2022-12-21 15:05:34
JavaScript缓动库
2009-05-25 12:50:00
python学习笔记:字典的使用示例详解
2022-06-14 16:31:31
DBA_2PC_PENDING 介绍
2009-02-28 10:59:00
Python中三个不可思议的返回功能分享
2021-11-21 07:32:41
python 运用Django 开发后台接口的实例
2021-02-02 00:48:02
Python3 列表,数组,矩阵的相互转换的方法示例
2023-05-30 23:52:19
Python pymysql模块安装并操作过程解析
2024-01-19 16:05:39
Python中的defaultdict模块和namedtuple模块的简单入门指南
2022-01-21 07:10:20
与 Function 和 Object 相关的有趣代码
2010-05-07 12:29:00
Python实战小项目之Mnist手写数字识别
2023-01-20 23:24:56
javascript图片预加载
2009-08-30 12:47:00
浅谈python的深浅拷贝以及fromkeys的用法
2023-07-20 04:45:33
基于python实现学生管理系统
2021-11-24 21:07:48
PHP页面中文乱码分析
2024-05-13 09:23:19
Python面向对象程序设计类变量与成员变量、类方法与成员方法用法分析
2022-08-11 15:43:43
SQL Server 2005 Express版企业管理器下载
2009-10-06 14:54:00
MySQL 优化设置步骤
2024-01-26 16:51:37
Python排序搜索基本算法之选择排序实例分析
2023-10-05 20:01:12