PHP头条
热点:

Python压缩模块zipfile实现原理及用法代码解析


本篇文章小编给大家分享一下Python压缩模块zipfile实现原理及用法代码解析,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供大家参考,有需要的小伙伴们可以来看看。

一、python压缩模块简介

python直接通过内置压缩模块可以直接进行压缩文件的创建;

内置模块 zipfile/rarfile 完成压缩文件的操作。

二、 zipfile模块基础使用

2.1 对一个文件进行zip压缩

# 把当前目录的test.txt文件压缩到a.zip压缩包中
import zipfile

f = zipfile.ZipFile('a.zip', 'w', zipfile.ZIP_DEFLATED)
f.write('test.txt')
f.close()

上述代码中:

a.zip是压缩后要保存的文件名

w 表示写入压缩文件的含义

ZIP_DEFLATED表示压缩;ZIP_STORE表示只打包,不压缩(类似Linux中的gz跟tar格式)

write方法:目前填写的参数 test.txt 为当前目录下的文件,它表示要压缩的文件。

2.2 对一个zip压缩文件进行解压缩

# 把当前目录的a.zip压缩包中的test.txt进行解压
import zipfile
f = zipfile.ZipFile('a.zip','r')
f.extract('test.txt')

上述代码中:

a.zip 是当前目前下的压缩包文件,该压缩包目前只压缩了一个 test.txt 文件

extract() 方法的作用就用来进行解压缩,参数填写的是 a.zip 压缩包中必须包含的文件名信息

如果我不知道压缩包中包含了什么文件信息,那就比较麻烦。可以用namelist()方法解决,如下2.3

2.3 对一个zip压缩文件中的所有文件进行解压缩

import zipfile
f = zipfile.ZipFile('a.zip','r')
for file in f.namelist():
  f.extract(file,'./temp')

上述代码中:

namelist()方法返回压缩包中包含的所有文件信息,返回值为 list 类型

通过循环的方式把所有都进行解压到 当前目录下的temp目录

  • 上一篇: Python发送邮件实现代码实例

  • 下一篇: Java序列化与反序列化如何实现 Java序列化与反序列化实现代码

www.phpzy.comtrue/php/39462.htmlTechArticlePython压缩模块zipfile实现原理及用法代码解析 本篇文章小编给大家分享一下Python压缩模块zipfile实现原理及用法代码解析,文章代码介绍的很详细,小编觉得挺不错的,现在分享给大家供...

相关文章

    暂无相关文章

PHP之友评论

今天推荐