优草派  >   Python

Python内置模块zipfile有哪些方法?Python模块zipfile有哪些常用方法属性

罗西汉            来源:优草派

python内置模块zipfile就是一个能够来对指定类型压缩包进行解压操作的模块,而很多小伙伴对于它的使用经验很少也不太了解该模块。所以这篇文章会来分享一些zipfile模块常用的方法和属性,想了解和学习的小伙伴都可以继续往下阅读。

Python内置模块zipfile有哪些方法?Python模块zipfile有哪些常用方法属性

一、namelist()方法

namelist这个方法能够将一个压缩包之中的所有文件以及文件夹都给放在列表中显示出来,并且文件还会将后缀名也显示,这样就可以区分文件以及文件夹了。那么该方法在调用是需要使用ZipFile()方法打开压缩文件才可以,代码示例如下所示:

import zipfile
filename = "./result.zip"
with zipfile.ZipFile(filename, 'r')  as z:
  print(z.namelist())

二、read()方法

这个方法需要和上面的namelist方法一起配合使用的,因为该方法的作用就是将压缩包中某个文件的内容以二进制格式读取出来,而传入进去的参数就是文件名称。需要使用压缩包文件对象调用,代码如下所示:

data = z.read('file.yaml')
print(data)

三、解压和压缩

zipfile模块压缩文件不是调用方法,而是用ZipFile()方法创建一个当前目录不存在的压缩文件,然后在循环中调用writer()方法向其中添加文件和文件夹,代码如下所示:

for d in os.listdir("D:\st"):
    z.write(d)
    z.close()

而解压文件则是需要去调用extractall()方法,只需要使用压缩文件对象对调用它,并且传入解压后文件保存路径即可,代码如下:

z.extractall("D:\st")

四、属性

而zipfile模块还有一些方法是用来获取压缩包属性,这些属性包括文件名称、最后修改时间、压缩类型、压缩后的大小等等,代码如下所示:

info = z.getinfo('file.yaml')
print("名称:",info.filename)
print("时间:",info.date_time)
print("类型:",info.compress_type)
print("大小:",info.compress_size)

以上就是关于“Python内置模块zipfile有哪些方法?Python模块zipfile有哪些常用方法属性”的全部内容了,希望对你有所帮助。

【原创声明】凡注明“来源:优草派”的文章,系本站原创,任何单位或个人未经本站书面授权不得转载、链接、转贴或以其他方式复制发表。否则,本站将依法追究其法律责任。