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


Posted in Python onJune 14, 2020

zipfile

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

f=zipfile.ZipFile("test.zip",mode="")  //解压是 r , 压缩是 w 追加压缩是 a

mode的几种:

  • 解压:r
  • 压缩:w
  • 追加压缩:a 

压缩一个文件

创建一个压缩文件 test.zip(如果test.zip文件不存在) ,然后将 test.txt 文件加入到压缩文件 test.zip 中,如果原来的压缩文件中有内容,会清除原有的内容

import zipfile
try:
  with zipfile.ZipFile("c://users//17250//desktop//test.zip",mode="w") as f:
    f.write("c://users//17250//desktop//test.txt")          #写入压缩文件,会把压缩文件中的原有覆盖
except Exception as e:
    print("异常对象的类型是:%s"%type(e))
    print("异常对象的内容是:%s"%e)
finally:
    f.close()

如果要压缩的文件的路径是 c://users//17250//desktop//test.txt 这样的话,

那么最后压缩文件里面压缩的就是  users//17250//desktop//test.txt  文件了

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

向已存在的压缩文件中追加内容

import zipfile
try:
  with zipfile.ZipFile("c://users//17250//desktop//test.zip",mode="a") as f:
    f.write("e://test.txt")          #追加写入压缩文件
except Exception as e:
    print("异常对象的类型是:%s"%type(e))
    print("异常对象的内容是:%s"%e)
finally:
    f.close()

虽然原文件里面压缩的文件的路径是 users//17250//desktop//test.txt  ,但是追加进去的是 e://test2.txt 文件,那么test2.txt 文件压缩是在 users 那一级的目录。

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

解压文件

将test.zip文件解压

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

import zipfile
try:
  with zipfile.ZipFile("c://users//17250//desktop//test.zip",mode="a") as f:
     f.extractall("c://users//17250//desktop//",pwd=b"root") ##将文件解压到指定目录,解压密码为root
except Exception as e:
     print("异常对象的类型是:%s"%type(e))
     print("异常对象的内容是:%s"%e)
finally:
     f.close()

高级应用

zipfile.is_zipfile(filename) 

判断一个文件是不是压缩文件 

ZipFile.namelist() 

返回文件列表 

if zipfile.is_zipfile('test.zip'): #is_zipfile() 判断是否似zip文件
  f = zipfile.ZipFile('test.zip')
  files = f.namelist() #namelist() 返回zip压缩包中的所有文件
  print(files)
  f.close()

总结

到此这篇关于Python中zipfile压缩文件模块的基本使用教程的文章就介绍到这了,更多相关Python zipfile压缩文件模块使用内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
详解python如何调用C/C++底层库与互相传值
Aug 10 Python
python根据list重命名文件夹里的所有文件实例
Oct 25 Python
使用PyQtGraph绘制精美的股票行情K线图的示例代码
Mar 14 Python
python pickle存储、读取大数据量列表、字典数据的方法
Jul 07 Python
Python列表(list)所有元素的同一操作解析
Aug 01 Python
python之PyQt按钮右键菜单功能的实现代码
Aug 17 Python
Pycharm小白级简单使用教程
Jan 08 Python
详解pycharm连接不上mysql数据库的解决办法
Jan 10 Python
python turtle工具绘制四叶草的实例分享
Feb 14 Python
Python使用matplotlib绘制圆形代码实例
May 27 Python
python numpy库np.percentile用法说明
Jun 08 Python
python 实现定时任务的四种方式
Apr 01 Python
pandas DataFrame运算的实现
Jun 14 #Python
Numpy中ndim、shape、dtype、astype的用法详解
Jun 14 #Python
DataFrame 数据合并实现(merge,join,concat)
Jun 14 #Python
python中pandas库中DataFrame对行和列的操作使用方法示例
Jun 14 #Python
Django 构建模板form表单的两种方法
Jun 14 #Python
Python Django搭建网站流程图解
Jun 13 #Python
Python xpath表达式如何实现数据处理
Jun 13 #Python
You might like
怎样在UNIX系统下安装php3
2006/10/09 PHP
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
PHP编程实现阳历转换为阴历的方法实例
2017/08/08 PHP
PHP simplexml_import_dom()函数讲解
2019/02/03 PHP
PHP实现通过文本文件统计页面访问量功能示例
2019/02/13 PHP
PHP cookie,session的使用与用户自动登录功能实现方法分析
2019/06/05 PHP
php判断数组是否为空的实例方法
2020/05/10 PHP
editable.js 基于jquery的表格的编辑插件
2011/10/24 Javascript
JavaScript 操作table,可以新增行和列并且隔一行换背景色代码分享
2013/07/05 Javascript
javascript同页面多次调用弹出层具体实例代码
2013/08/16 Javascript
js获取当前地址 JS获取当前URL的示例代码
2014/02/26 Javascript
推荐5 个常用的JavaScript调试技巧
2015/01/08 Javascript
实例讲解jquery与json的结合
2016/01/07 Javascript
Bootstrap中CSS的使用方法
2016/02/17 Javascript
Atitit.js的键盘按键事件捆绑and事件调度
2016/04/01 Javascript
jQuery-mobile事件监听与用法详解
2016/11/23 Javascript
JavaScript队列的应用实例详解【经典数据结构】
2017/04/12 Javascript
JavaScript之Map和Set_动力节点Java学院整理
2017/06/29 Javascript
js推箱子小游戏步骤代码解析
2018/01/10 Javascript
在vue项目中,将juery设置为全局变量的方法
2018/09/25 Javascript
vuex实现数据状态持久化
2019/11/11 Javascript
原生JavaScript实现刮刮乐
2020/09/29 Javascript
深入理解Python中各种方法的运作原理
2015/06/15 Python
Python新手入门最容易犯的错误总结
2017/04/24 Python
python面向对象_详谈类的继承与方法的重载
2017/06/07 Python
对python中xlsx,csv以及json文件的相互转化方法详解
2018/12/25 Python
Django unittest 设置跳过某些case的方法
2018/12/26 Python
python实现五子棋人机对战游戏
2020/03/25 Python
css3中背景尺寸background-size详解
2014/09/02 HTML / CSS
软件测试企业面试试卷
2016/07/13 面试题
银行门卫岗位职责
2013/12/29 职场文书
通用自荐信范文
2014/03/14 职场文书
《骑牛比赛》教后反思
2014/04/22 职场文书
“四风”问题整改措施和努力方向
2014/09/20 职场文书
2014党员自我评议表范文
2014/09/20 职场文书
Mysql中的触发器定义及语法介绍
2022/06/25 MySQL