【Python】tarfile与zipfile 模块 _ 文件归档压缩
tarfile
打包
# 打包路径及文件名称; 如果只打包不压缩 将"w:gz"改为"w:"或"w" tar = tarfile.open(save_path, mode="w") # 向tar包添加文件 tar.add(add_filepath, arcname=filename) # 关闭 tar.close()
解压
# 需要解压的文件 只读 tar=tarfile.open(filepath,"r") # 解压 tar.extractall() # 关闭 tar.close()
zipfile
压缩
# 当前文件夹下的文件名 with zipfile.ZipFile("./123.zip", 'w') as z: # 需要压缩的文件 z.write("./xxx_a.py") z.write("./xxx_b.py")
解压
# 解压文件 with zipfile.ZipFile("123.zip", "r") as z: print("查看压缩包中的文件:", z.namelist()) # z.extract("xxx_a.py") # 仅解压 xxx_a.py # z.extractall() # 解压全部文件 z.extractall("./123") # 解压文件到当前目录123文件夹下
拓展
tarfile mode行为
mode 行为 'r:' 以读模式打开一个未压缩的归档文件(通常后缀为*.tar) 'r:gz' 以读模式打开一个通过gzip方式进行压缩的归档文件(通常后缀为*.tar.gz) 'r:bz2' 以读模式打开一个通过bzip2方式进行压缩的归档文件(通常后缀为*.tar.bz2) 'r:xz' 以读模式打开一个通过lzma方式进行压缩的归档文件(通常后缀为*.tar.xz) 'r' 或 'r:*' 以读模式打开归档文件,可以打开以上任意方式压缩的归档文件,且会自动判断应该使用的压缩方式。推荐使用这个mode。 'w'或'w:' 以写模式打开一个不进行压缩的归档文件 'w:gz' 以写模式打开一个以gzip方式进行压缩的归档文件 'w:bz2' 以写模式打开一个以bzip2方式进行压缩的归档文件 'w:xz' 以写模式打开一个以lzma方式进行压缩的归档文件 'x'或'x:' 同'w'或'w:',但是如果归档文件已经存在会引发FileExistsError 'x:gz' 同'w:gz',但是如果归档文件已经存在会引发FileExistsError 'x:bz2' 同'w:bz2'',但是如果归档文件已经存在会引发FileExistsError 'x:xz' 同'w:xz',但是如果归档文件已经存在会引发FileExistsError 'a'或'a:' 以追加方式打开一个不进行压缩的股低昂文件,如果文件不存在则创建
-------------------------------------------------------------------------------------
如果万事开头难 那请结局一定圆满 @ Phoenixy
-------------------------------------------------------------------------------------
分类:
Python
标签:
python 模块及工具
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· AI 智能体引爆开源社区「GitHub 热点速览」
· 写一个简单的SQL生成工具