Python打包文件夹的方法小结(zip,tar,tar.gz等)
本文实例讲述了Python打包文件夹的方法。分享给大家供大家参考,具体如下:
一、zip
importos,zipfile #打包目录为zip文件(未压缩) defmake_zip(source_dir,output_filename): zipf=zipfile.ZipFile(output_filename,'w') pre_len=len(os.path.dirname(source_dir)) forparent,dirnames,filenamesinos.walk(source_dir): forfilenameinfilenames: pathfile=os.path.join(parent,filename) arcname=pathfile[pre_len:].strip(os.path.sep)#相对路径 zipf.write(pathfile,arcname) zipf.close()
二、tar/tar.gz
importos,tarfile #一次性打包整个根目录。空子目录会被打包。 #如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。 defmake_targz(output_filename,source_dir): withtarfile.open(output_filename,"w:gz")astar: tar.add(source_dir,arcname=os.path.basename(source_dir)) #逐个添加文件打包,未打包空子目录。可过滤文件。 #如果只打包不压缩,将"w:gz"参数改为"w:"或"w"即可。 defmake_targz_one_by_one(output_filename,source_dir): tar=tarfile.open(output_filename,"w:gz") forroot,dir,filesinos.walk(source_dir): forfileinfiles: pathfile=os.path.join(root,file) tar.add(pathfile) tar.close()
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python文件与目录操作技巧汇总》、《Python文本文件操作技巧汇总》、《PythonURL操作技巧总结》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《PythonSocket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。