Python中zipfile压缩文件模块的基本使用教程

2023-10-02 17:55

zipfile

Python中的zipfile模块提供了一系列对zip压缩文件的操作。

f=zipfile.ZipFile("m.gsm-guard.net",mode="") //解压为r,压缩为w,附加压缩为a

模式的几种类型:

  • 解压:r
  • 压缩:w
  • 额外压缩:a

压缩文件

创建压缩文件m.gsm-guard.net(如果m.gsm-guard.net文件不存在),然后将test.txt文件添加到压缩文件m.gsm-guard.net中。如果原压缩文件中有内容,则原内容会被清除

导入压缩文件
尝试:
  与 zipfile.ZipFile("c://users//17250//desktop//m.gsm-guard.net",mode="w") 作为 f:
    f.write("c://users//17250//desktop//test.txt") #写入压缩文件会覆盖压缩文件中原来的内容。
除了异常 e:
    print("异常对象的类型为:%s"%type(e))
    print("异常对象的内容是:%s"%e)
最后:
    f.close()

如果要压缩的文件路径是 c://users//17250//desktop//test.txt 此时

那么最终压缩文件中压缩的就是文件 users//17250//desktop//test.txt

将内容附加到现有压缩文件

导入压缩文件
尝试:与 zipfile.ZipFile("c://users//17250//desktop//m.gsm-guard.net",mode="a") 作为 f:
    f.write("e://test.txt") #追加写入压缩文件
除了异常 e:
    print("异常对象的类型为:%s"%type(e))
    print("异常对象的内容是:%s"%e)
最后:
    f.close()

虽然原文件中压缩文件的路径是 users//17250//desktop//test.txt ,但附加的是 e://test2.txt 文件,则test2.txt文件压缩在用户级目录下。

解压文件

解压m.gsm-guard.net文件

在python3中,解压文件的密码参数pwd接收的是二进制值,所以需要在前面加一个b。 python2中接受的是str字符串的值。

导入压缩文件
尝试:
  与 zipfile.ZipFile("c://users//17250//desktop//m.gsm-guard.net",mode="a") 作为 f:
     f.extractall("c://users://17250//desktop//",pwd=b"root") ##解压文件到指定目录,解压密码为root
除了异常 e:
     print("异常对象的类型为:%s"%type(e))
     print("异常对象的内容是:%s"%e)
最后:
     f.close()

高级应用程序

m.gsm-guard.net_zipfile(文件名)

判断文件是否为压缩文件

ZipFile.namelist()

返回文件列表

if m.gsm-guard.net_zipfile('m.gsm-guard.net'): #is_zipfile() 判断是否是像zip文件
  f = zipfile.ZipFile('m.gsm-guard.net')
  files = f.namelist() #namelist() 返回 zip 存档中的所有文件
  打印(文件)
  f.close()

总结

本文关于Python中zipfile压缩文件模块的基本使用教程就结束了。更多关于Python zipfile压缩文件模块的使用,请在来客网搜索之前的文章或者继续浏览下面的相关文章。希望大家以后多多支持来客网!