Day19 zip,tar压缩包模块

压缩模快- zipfile (后缀为zip)
import zipfile
格式: with zipfile.ZipFile("file",mode,zipfile.ZIP_DEFLATED)
功能: 创建一个zip文件,表示一个zip对象
参数:file 表示压缩包路径,或类对象文件
参数mode表示模式 ,默认为r  为w 就是新创建一个压缩包
zipfile.ZIP_STORED      只是存储模式,不会对文件进行压缩,这个是默认值
        zipfile.ZIP_DEFLATED    对文件进行压缩 (一般都用这个)
       -如果要操作的zip文件大小超过2G,应该将allowZip64设置为True# 创建压缩包
zf = zipfile.ZipFile("1234.zip","w",zipfile.ZIP_DEFLATED)
# 把文件写入到压缩包
zf.write("/day18/mv",'cp') # 把文件mv命名为cp压缩到1234.zip中
# 关闭文件
zf.close()

# 2. 解压文件
#  (1) 打开压缩包
zf  = zipfile.ZipFile("1234.zip","r",zipfile.ZIP_DEFLATED)
#  (2) 解压文件(解压一个)
zf.extract("cp","bin") # 解压到某个路径下(解压cp到文件夹bin中)
#   解压多个
zf.extractall("cp1","all")

# (3) 关闭压缩包 
zf.close()

# 追加文件
with zipfile.ZipFile("1234.zip","a",zipfile.ZIP_DAFLATED)
	zp.write("/day18/haha",'cp2') # 追加的必须是已存在的文件

# 读取压缩文件
with zipfile.ZipFile("1234.zip","r",zipfile.ZIP_DEFLATED)
	ls = zf.namelist()

	print(ls)

tarfile模块

后缀:
 .tar 普通压缩大小不变
 .tar.gz 压缩后文件变小
 .tar.bz2 压缩后最小
 
# 创建一个普通的tar压缩包
import tarfile
(1)
tf = tarfile.open("zs.tar","w") # 创建一个zs.tar压缩包
tf.add("w.txt","ww")# 将文档w.txt改名为ww压缩到zs.tar中
tf.close() # 关闭压缩包
(2)
tf = tarfile.open("ceshi0729_1.tar","w",encoding="utf-8")
tf.add("/bin/echo","echo") # 压缩bin路径下的echo
tf.add("/bin/ed","ed")
tf.add("/bin/fuser","/tmp/fuser")   # 压缩到文件tmp中
tf.close()
.tar.gz压缩包
tf = tarfile.open("zs.tar.gz","w",encoding="utf-8") # 创建一个zs.tar.gz压缩包
tf.add("w.txt","ww")# 将文档w.txt改名为ww压缩到zs.tar.gz中
tf.close() # 关闭压缩包

.tar.bz2
tf = tarfile.open("zs.tar","w",encoding="utf-8") # 创建一个zs.tar.bz2压缩包
tf.add("w.txt","ww")# 将文档w.txt改名为ww压缩到zs.tar.bz2中
tf.close() # 关闭压缩包
解压
tf = tarfile.open("zs.tar","r",encoding="utf-8")
# 解压单个
tf.extract("ww","aa") # 解压并起名为aa
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值