飘逸的python - 简明gzip模块压缩教程

来源:互联网 发布:php删除数组重复元素 编辑:程序博客网 时间:2024/04/29 23:57

飘逸的python - 简明gzip模块压缩教程

分类: Python 109人阅读 评论(0) 收藏 举报
gzip

目录(?)[+]

压缩数据创建gzip文件

先看一个略麻烦的做法
[python] view plaincopy
  1. import StringIO,gzip  
  2. content = 'Life is short.I use python'  
  3. zbuf = StringIO.StringIO()  
  4. zfile = gzip.GzipFile(mode='wb', compresslevel=9, fileobj=zbuf)  
  5. zfile.write(content)  
  6. zfile.close()  

但其实有个快捷的封装,不用用到StringIO模块
[python] view plaincopy
  1. f = gzip.open('file.gz''wb')  
  2. f.write(content)  
  3. f.close()  

压缩已经存在的文件

python2.7后,可以用with语句
[python] view plaincopy
  1. import gzip  
  2. with open("/path/to/file"'rb') as plain_file:  
  3.     with gzip.open("/path/to/file.gz"'wb') as zip_file:  
  4.         zip_file.writelines(plain_file)  

如果不考虑跨平台,只在linux平台,下面这种方式更直接
[python] view plaincopy
  1. from subprocess import check_call  
  2. check_call('gzip /path/to/file',shell=True
原创粉丝点击