欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python学习笔记--Python基础-09-常用模块zip

程序员文章站 2022-05-31 17:27:14
...

常用模块

  • calendar
  • time
  • datetime
  • timeit
  • os
  • shutil
  • zip
  • math
  • string
  • 上述所有模块使用理论上都应该先导入,string是特例
  • calendar,time,datetime的区别参考中文意思

zip - 压缩包

- 模块名称叫 zipfile

import zipfile
#zipfile.ZipFile(file[, mode[, compression[, allowZip64]]])
# 创建一个ZipFile对象,表示一个zip文件。参数file表示文件的路径或类文件对象(file-like object);参数mode指示打开zip文件的模式,默认值为’r’,表示读已经存在的zip文件,也可以为’w’或’a’,’w’表示新建一个zip文档或覆盖一个已经存在的zip文档,’a’表示将数据附加到一个现存的zip文档中。参数compression表示在写zip文档时使用的压缩方法,它的值可以是zipfile. ZIP_STORED 或zipfile. ZIP_DEFLATED。如果要操作的zip文件大小超过2G,应该将allowZip64设置为True。

zf = zipfile.ZipFile("E:\\Python\\io.zip",'r')
print(zf)

<zipfile.ZipFile filename='E:\\Python\\io.zip' mode='r'>

# ZipFile.namelist()
#  获取zip文档内所有文件的名称列表。

nl = zf.namelist()
print(nl)

# # 返回该zip的文件名
print(azip.filename)
['io/io.txt', 'io/io2.txt', 'io/']

'E:\\Python\\io.zip'

 

# ZipFile.getinfo(name):
#  获取zip文档内指定文件的信息。返回一个zipfile.ZipInfo对象,它包括文件的详细信息。将在下面 具体介绍该对象。

rst = zf.getinfo("io/io.txt")
print(rst)
# 原来文件大小
print(rst.file_size)
# 压缩后大小
print(rst.compress_size)
<ZipInfo filename='io/io.txt' external_attr=0x20 file_size=11>
11
11

解压Zip

最为关键的功能,一句搞定。默认解压在当前工作目录,可以指定解压目录。

# ZipFile.extractall([path[, members[, pwd]]])
#  解压zip文档中的所有文件到当前目录。参数members的默认值为zip文档内的所有文件名称列表,也可以自己设置,选择要解压的文件名称。
zf.extractall()

 

相关标签: python zipfile