python压缩解压缩相关

打包成zip文件

import zipfile
f = zipfile.ZipFile('archive.zip','w',zipfile.ZIP_DEFLATED)
f.write('file_to_add.py')
f.close()

从zip文件解包

import os,sys  
import zipfile  
import re
os.chdir('/home/wangyue/brain/geneexpression')

all = os.listdir('.')

for ii in all:
    b = re.match('\d+',ii)
    if b:        
        zfile = ii
        z = zipfile.ZipFile(zfile, mode='r')
        os.mkdir('un' + ii)
        for jj in z.filelist:
            data = z.read(jj)            
            fd = open('./'+'un'+ii+'/'+jj.filename,'wb')     
            fd.write(data)
            fd.close()

把整个文件夹内的文件打包

import zipfile
f = zipfile.ZipFile('archive.zip','w',zipfile.ZIP_DEFLATED)
startdir = "c:\\mydirectory"
for dirpath, dirnames, filenames in os.walk(startdir):
    for filename in filenames:
        f.write(os.path.join(dirpath,filename))
f.close()

该代码片段来自于: http://www.sharejs.com/codes/python/210

压缩和解压缩tar.gz文件

先是解压缩

import tarfile
import os
def untar(fname, dirs):
    t = tarfile.open(fname)
    t.extractall(path = dirs) 

if __name__ == "__main__":
    untar("del.tar.gz", ".")

再是压缩

import tarfile
import os
def tar(fname):
    t = tarfile.open(fname + ".tar.gz", "w:gz")
    for root, dir, files in os.walk(fname):
        print root, dir, files
        for file in files:
            fullpath = os.path.join(root, file)
            t.add(fullpath)
    t.close()

if __name__ == "__main__":
    tar("del")

以上引用自

http://www.cnblogs.com/kaituorensheng/p/4493145.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值