python 学习笔记(四):压缩包管理

本文介绍了Python中使用tarfile和zipfile模块进行压缩包管理的方法,包括读取压缩文件、创建压缩包,以及使用shutil模块进行文件压缩的操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python 的 tarfile 标准库提供了 tar 命令所提供的功能 。

读取压缩包文件

# 打开压缩包获取压缩包里面的文件
import tarfile
tarfile.open('tarfile.tar') as t:
    for member_info in t.getmembers():
        print(member_info.name) 

# tarfile 中常用的函数有
tarfile.getnames() # 获取tar包文件列表
tarfile.extract(pwd) # 提取单个文件
tarfile.extractall(pwd) # 提取所有文件

#读取gizp算法压缩的tar包
with tarfile.open('tarfile.tar', mode='r:gz') as out:

创建压缩包

import tarfile
with tarfile.open('tarfile.tar',mode='w') as out: # 创建一个空的 tarfile.tar 文件
    out.add('README.txt') # 往压缩包里面添加文件

# 创建一个bzip2算法压缩的压缩包
with tarfile.open('tarfile.tar', mode='w:bz2') as out:

zipfile 创建和读取zip压缩包

# 读取zip
import zipfile
zip = zipfile.zipfile('example.zip')
zip.namelist() # 获取所有文件和文件夹的字符串列表
zip.extract(pwd) # 提取单个文件
zip.extractall(pwd) # 提取所有文件

# 创建zip
import zipfile
newZip = zipfile.ZipFile('new.zip','w')
newZip.write('spam.txt')
newZip.close()

#用命令行创建zip包,参数: -l 文件列表、 -c 创建zip、 -e 提取zip、 -t 验证是否是zip
python -m zipfile -c zip名称 文件名[ 文件名][ 文件名]
# python -m zipfile -c newZip a.txt b.txt c.txt

python -m zipfile -e zip名称 解压到目录名称

shutil 模块压缩文件

shutil.get_archive_formats() # 查看支持的压缩格式
shutil.make_archive('backup', 'gztar', dir) # 创建 backuo.tar.gz 格式压缩包, dir 指定压缩目录
shutil.make_archive('backup', 'zip', dir) # 创建 backuo.zip 格式压缩包, dir 指定压缩目录

shutil.unpack_archive('backup.tar.gz',unpackdir) # 解压到 unpackdir 目录下
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值