失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > python怎么打包压缩文件_Python打包文件夹的方法小结(zip tar tar.gz等)

python怎么打包压缩文件_Python打包文件夹的方法小结(zip tar tar.gz等)

时间:2019-12-25 19:38:18

相关推荐

python怎么打包压缩文件_Python打包文件夹的方法小结(zip tar tar.gz等)

本文实例讲述了Python打包文件夹的方法。分享给大家供大家参考,具体如下:

一、zip

import os, zipfile

#打包目录为zip文件(未压缩)

def make_zip(source_dir, output_filename):

zipf = zipfile.ZipFile(output_filename, 'w')

pre_len = len(os.path.dirname(source_dir))

for parent, dirnames, filenames in os.walk(source_dir):

for filename in filenames:

pathfile = os.path.join(parent, filename)

arcname = pathfile[pre_len:].strip(os.path.sep) #相对路径

zipf.write(pathfile, arcname)

zipf.close()

二、tar/tar.gz

import os, tarfile

#一次性打包整个根目录。空子目录会被打包。

#如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。

def make_targz(output_filename, source_dir):

with tarfile.open(output_filename, "w:gz") as tar:

tar.add(source_dir, arcname=os.path.basename(source_dir))

#逐个添加文件打包,未打包空子目录。可过滤文件。

#如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。

def make_targz_one_by_one(output_filename, source_dir):

tar = tarfile.open(output_filename,"w:gz")

for root,dir,files in os.walk(source_dir):

for file in files:

pathfile = os.path.join(root, file)

tar.add(pathfile)

tar.close()

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《Python URL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

时间: -09-17

如果觉得《python怎么打包压缩文件_Python打包文件夹的方法小结(zip tar tar.gz等)》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。