Python打包文件夹(zip/tar/tar.gz)

简介:

Code tells all:

一、zip

1
2
3
4
5
6
7
8
9
10
11
12
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

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
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()


相关阅读:

1、zipfile — Work with ZIP archives

2、tarfile — Read and write tar archive files

3、Python压缩/解压gzip大文件


*** walker ***

本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1719427如需转载请自行联系原作者


RQSLT

相关文章
|
1月前
|
Linux 区块链 Python
Python实用记录(十三):python脚本打包exe文件并运行
这篇文章介绍了如何使用PyInstaller将Python脚本打包成可执行文件(exe),并提供了详细的步骤和注意事项。
59 1
Python实用记录(十三):python脚本打包exe文件并运行
|
1月前
|
Python
Python批量自动处理文件夹
Python批量自动处理文件夹
Python批量自动处理文件夹
|
2月前
|
存储 Shell 区块链
怎么把Python脚本打包成可执行程序?
该文档介绍了如何将Python脚本及其运行环境打包成EXE可执行文件,以便在不具备Python环境的计算机上运行。首先确保Python脚本能够正常运行,然后通过安装PyInstaller并使用`--onefile`参数将脚本打包成独立的EXE文件。此外,还提供了去除命令行窗口和指定可执行文件图标的详细方法。这些步骤帮助用户轻松地将Python程序分发给最终用户。
怎么把Python脚本打包成可执行程序?
|
1月前
|
XML JSON Ubuntu
Python实用记录(十五):PyQt/PySide6打包成exe,精简版(nuitka/pyinstaller/auto-py-to-exe)
本文介绍了使用Nuitka、PyInstaller和auto-py-to-exe三种工具将Python的PyQt/PySide6应用打包成exe文件的方法。提供了详细的安装步骤、打包命令和参数说明,适合新手学习和实践。
377 0
|
1月前
|
Python
Python实用记录(十二):文件夹下所有文件重命名以及根据图片路径保存到新路径下保存
这篇文章介绍了如何使用Python脚本对TTK100_VOC数据集中的JPEGImages文件夹下的图片文件进行批量重命名,并将它们保存到指定的新路径。
33 0
|
1月前
|
Python
如何利用Python快捷地操作文件和文件夹
关注B站用户“肆十二-”,观看更多实战教学视频。本文介绍Python的shutil库,涵盖文件和文件夹的复制、移动、删除及归档等高级操作,提供实用代码示例。
26 0
|
1月前
|
人工智能 API iOS开发
ChatGPT编程Python小案例(拿来就用)—解压zip压缩文
ChatGPT编程Python小案例(拿来就用)—解压zip压缩文
|
2月前
|
Python
Python中的zip:高效处理并行迭代的利器
Python中的zip:高效处理并行迭代的利器
25 0
|
2月前
|
数据处理 Python
python遍历文件夹所有文件按什么排序
python遍历文件夹所有文件按什么排序
|
2月前
|
数据处理 Python
Python遍历文件夹所有文件并按指定排序
Python遍历文件夹所有文件并按指定排序
下一篇
无影云桌面