压缩模块:zipfile
导入包:import zipfile
格式:
zipfile.ZipFile(路径包名,模式,压缩或打包,可选allowzip64)
压缩、打包:
ZIP_STORED:只是存储模式,不会对文件进行压缩,这个是默认模式
zipfile.ZIP_DEFLATED:对文件进行压缩
模式:
w:表示新建一个zip文档或覆盖一个已经存在的zip文档
r:表示读取已经存在的zip文件
a:将文件追加到已经存在的zip文件当中
可选allowzip64
当操作的zip大小超过2G,应将allowzip64设置为True
压缩文件:
w模式:
import zipfile
res=zipfile.ZipFile('D:\\SZC\\yaosuo.zip','w',compression=zipfile.ZIP_DEFLATED)
res.write('D:\\SZC\\第14章\\内置成员.py','1.py')
res.write('D:\\SZC\\第14章\\设计模式.py','2.py')
res.close()
a模式:
import zipfile
res=zipfile.ZipFile('D:\\SZC\\yaosuo.zip','a',compression=zipfile.ZIP_DEFLATED)
res.write('D:\\SZC\\第14章\\内置成员.py','3.py')
res.write('D:\\SZC\\第14章\\设计模式.py','4.py')
res.close()
解压文件
解压单个文件
格式:extract(文件,路径):路径如果不写,默认解压到当前工作目录下
import zipfile
res=zipfile.ZipFile('D:\\SZC\\yaosuo.zip','r')
res.extract('1.py','D:\\SZC\\第14章')
res.close()
#解压多个文件
格式:extractall(格式,[文件1,文件2...]):路径如果不写,默认到当前工作目录。 文件如果不写,就默认解压所有文件
import zipfile
res=zipfile.ZipFile('D:\\SZC\\yaosuo.zip','r')
res.extractall('D:\\SZC\\第14章',['1.py','2.py'])
res.close()