秋天来啦,秋天来啦;天空像一块覆盖在大地上的蓝宝石,它已经给秋风抹试得洁净而明亮。棉花笑嘻嘻的来了,它听说好朋友—秋姑娘来了,笑的咧开了嘴。玉米在房顶上唱着歌跳着舞,别提多开心了。路边两只黑色的小狗在玩耍,看它那可爱的样子,让人忍不住的笑。石榴也许太兴奋了,竟然笑破了肚皮,苹果跑着来了,当然脸蛋是红彤彤的。
由于同事电脑上没有直接可以压缩gz.tar格式的压缩软件,而工作中这个又时常需要将zip文件转换为gz.tar格式,所以常常将压缩为zip格式的文件发给我来重新压缩成gz.tar格式发给他,能偷懒就不想动手,就用python的tarfile和zipfile包完成了一个将zip转换成gz.tar格式的小脚本:
代码比较简单,也就几行,但是写的时候因为绝对路径的问题浪费了点时间,代码水平还是有待提高。
#coding: utf-8 import os import tarfile import zipfile def zip2tar(root_path, name,to_name='test'): ''' root_path: 压缩文件所在根目录 name: 压缩文件名字(zip格式) ''' #root_path = r'C:\Users\Administrator\Desktop\somefiles' #file_path = os.path.join(root_path, 'somemodel.zip') file_path = os.path.join(root_path, name+'.zip') with zipfile.ZipFile(file_path, 'r') as zzip: with tarfile.open(os.path.join(root_path, to_name+'.gz.tar'), 'w') as ttar: for ffile in zzip.namelist(): if not os.path.isdir(ffile): #if not ffile.strip().endswith(r'/'): zzip.extract(ffile, root_path) ttar.add(os.path.join(root_path,ffile), arcname=ffile) if __name__ == '__main__': root_path = raw_input(u'input root path: ') name = raw_input(u'input the zip name(without .zip): ') zip2tar(root_path, name)
以上这篇python中将zip压缩包转为gz.tar的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。