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


Posted in Python onAugust 14, 2020

一、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 相关文章推荐
python实现的生成随机迷宫算法核心代码分享(含游戏完整代码)
Jul 11 Python
用Python实现换行符转换的脚本的教程
Apr 16 Python
python数组过滤实现方法
Jul 27 Python
python实现电脑自动关机
Jun 20 Python
在numpy矩阵中令小于0的元素改为0的实例
Jan 26 Python
Python实现DDos攻击实例详解
Feb 02 Python
利用Python半自动化生成Nessus报告的方法
Mar 19 Python
Python爬虫进阶之爬取某视频并下载的实现
Dec 08 Python
python给list排序的简单方法
Dec 10 Python
python中remove函数的踩坑记录
Jan 04 Python
Python通过m3u8文件下载合并ts视频的操作
Apr 16 Python
Python办公自动化之教你用Python批量识别发票并录入到Excel表格中
Jun 26 Python
Python编写memcached启动脚本代码实例
Aug 14 #Python
Python自动巡检H3C交换机实现过程解析
Aug 14 #Python
基于python调用jenkins-cli实现快速发布
Aug 14 #Python
使用tensorflow进行音乐类型的分类
Aug 14 #Python
10行Python代码实现Web自动化管控的示例代码
Aug 14 #Python
如何真正的了解python装饰器
Aug 14 #Python
详解python metaclass(元类)
Aug 13 #Python
You might like
关于我转生变成史莱姆这档事:第二季PV上线,萌王2021年回归
2020/05/06 日漫
CI框架中cookie的操作方法分析
2014/12/12 PHP
PHP云打印类完整示例
2016/10/15 PHP
/etc/php-fpm.d/www.conf 配置注意事项
2017/02/04 PHP
thinkphp诸多限制条件下如何getshell详解
2020/12/09 PHP
js通过googleAIP翻译PHP系统的语言配置的实现代码
2011/10/17 Javascript
javascript中this做事件参数相关问题解答
2013/03/17 Javascript
Javascript setInterval的两种调用方法(实例讲解)
2013/11/29 Javascript
javascript 常用验证函数总结
2016/06/28 Javascript
浅谈jquery高级方法描述与应用
2016/10/04 Javascript
jquery+css3问卷答题卡翻页动画效果示例
2016/10/26 Javascript
js 去掉字符串前后空格实现代码集合
2017/03/25 Javascript
React组件之间的通信的实例代码
2017/06/27 Javascript
layer实现关闭弹出层刷新父界面功能详解
2017/11/15 Javascript
javascript按顺序加载运行js方法
2017/12/01 Javascript
手写简单的jQuery雪花飘落效果实例
2018/04/22 jQuery
[15:20]DOTA2亚洲邀请赛总决赛开幕式表演:羽泉献唱
2017/04/05 DOTA
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
python实现跨文件全局变量的方法
2014/07/07 Python
Python文件夹与文件的操作实现代码
2014/07/13 Python
低版本中Python除法运算小技巧
2015/04/05 Python
Python IDLE入门简介
2017/12/08 Python
python实现机械分词之逆向最大匹配算法代码示例
2017/12/13 Python
Django+Ajax+jQuery实现网页动态更新的实例
2018/05/28 Python
django+echart绘制曲线图的方法示例
2018/11/26 Python
Python参数解析模块sys、getopt、argparse使用与对比分析
2019/04/02 Python
Docker部署Python爬虫项目的方法步骤
2020/01/19 Python
很酷的小工具和电子产品商城:GearBest
2016/11/19 全球购物
澳大利亚和新西兰最大的在线旅行社之一:Aunt Betty
2019/08/07 全球购物
Sunglass Hut巴西网上商店:男女太阳镜
2020/10/04 全球购物
大学新生入学教育方案
2014/05/16 职场文书
信访稳定工作汇报
2014/10/27 职场文书
学校党的群众路线教育实践活动总结材料
2014/10/30 职场文书
高中团支书竞选稿
2015/11/21 职场文书
2016年“世界环境日”校园广播稿
2015/12/18 职场文书
云服务器部署 Web 项目的实现步骤
2022/06/28 Servers