在大家使用电脑来传输文件时,对于比较大的文件都是会将其压缩之后减少体积再传输的,而文件压缩之后的数据类型也有zip、rar、7z等等不同种类。而这篇文章主要介绍的就是能够对zip类型压缩文件进行操作的模块zipfile,它解压和压缩文件的方法,一起往下看看吧。
一、解压文件
zipfile模块只能够将zpi类型和后缀的压缩文件解压出来,而调用的解压方法为extractall(),该方法之中需要传入的就是压缩文件解压之后里面内容保存的文件目录。
而在该方法之前就是需要使用ZipFile()方法将这个压缩文件以只读模式打开,然后使用返回的文件对象去调用文件解压方法,代码示例如下所示:
import zipfile testdir = "D:\\FTZ\\python_tool\\result\\test" filename = "./result.zip" with zipfile.ZipFile(filename, 'r') as z: z.extractall(testdir)
二、压缩文件
压缩文件同样需要先调用方法将一个zip后缀的文件打开,当然这个文件在指定路径中是不存在的,这样就会重新创建并且不会出现命名冲突的问题。那么该模块将文件压缩的方法优点不一样,是通过for循环来迭代一个文件路径下的所有文件,然后再将其添加到压缩文件之中,代码示例如下所示:
import zipfile import os testdir = "D:\\DI\\test" filename = "./result.zip" with zipfile.ZipFile(filename, 'w') as z: for d in os.listdir(testdir): z.write(d) z.close
除了这两个方法之外,还可以通过namelist()这个方法将zip类型压缩包之中的所有文件以列表形式输出。这样就可以来查看一下该压缩包之中是否有自己需要解压出来的文件了,代码如下所示:
with zipfile.ZipFile(filename, 'r') as z: files = z.namelist() print(files)
以上就是关于“Python如何使用zipfile模块压缩文件?python模块zipfile怎么解压文件”的全部内容了,希望对你有所帮助。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。