归档和压缩
- 归档:把多个文件或者文件夹合并到一个文件当中
- 压缩:用算法把多个文件或者文件夹无损或者有损的合并到一个一个文件当中
# make_archive() 归档操作
# 格式: shutil.make_archive(归档之后的目录和文件名,后缀,需要归档的文件夹)
# 返回值:归档之后的地址
# 是想得到一个叫做python.zip的归档文件
rst = shutil.make_archive("D:\\Python","zip","D:\\PyCode")
print(rst)
D:\Python.zip
# unpack_rachive() 解包操作
# 格式:shutil.unpack_archive(归档文件地址,解包之后的地址)
# 返回值:解包之后的地址
zip - 压缩包
- 模块名称叫 zipfile
import zipfile
# zipfile.ZipFile(file[,mode[,compression[,allowZip64]]])
# 常见一个ZipFile对象,表示一个zip文件,参数file表示文件的路径或类文件对象(file-list)
zf = zipfile.ZipFile("D:\Python.zip")
# ZipFile.getinfo(name):
# 获取zip文档内指定文件的信息。返回一个zipfile.ZipInfo对象,它包括文件的详细信息。
rst = zf.getinfo("Python.txt")
print(rst)
<ZipInfo filename='Python.txt' compress_type=deflate filemode='-rw-rw-rw-' file_size=5 compress_size=5>
# ZipFile.namelist()
# 获取zip文档内所有文件的名称列表
nl = zf.namelist()
print(nl)
# ZipFile.extractall([path[,members[,pwd]]])
# 解压zip文档中所有文件到当前目录,参数members的默认值为zip文档内的所有文件名称列表
rst = zf.extractall("D:\Python")
print(rst)
None