python压缩解压缩相关

来源:互联网 发布:华傲数据是外包公司么 编辑:程序博客网 时间:2024/06/08 20:12

打包成zip文件

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

从zip文件解包

import os,sys  import zipfile  import reos.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 zipfilef = 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 tarfileimport osdef untar(fname, dirs):    t = tarfile.open(fname)    t.extractall(path = dirs) if __name__ == "__main__":    untar("del.tar.gz", ".")

再是压缩

import tarfileimport osdef 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
原创粉丝点击