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中使用PyHook监听鼠标和键盘事件实例
Jul 18 Python
python利用Guetzli批量压缩图片
Mar 23 Python
Python实现的井字棋(Tic Tac Toe)游戏示例
Jan 31 Python
pyqt5简介及安装方法介绍
Jan 31 Python
python操作redis方法总结
Jun 06 Python
python 字符串追加实例
Jul 20 Python
Python 使用threading+Queue实现线程池示例
Dec 21 Python
Tensorflow分批量读取数据教程
Feb 07 Python
Python脚本破解压缩文件口令实例教程(zipfile)
Jun 14 Python
keras 简单 lstm实例(基于one-hot编码)
Jul 02 Python
Python获取指定网段正在使用的IP
Dec 14 Python
Github 使用python对copilot做些简单使用测试
Apr 14 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
全国FM电台频率大全 - 4 山西省
2020/03/11 无线电
压力如何影响浓缩咖啡品质
2021/03/03 咖啡文化
浅析PHP水印技术
2007/02/14 PHP
PHP连接SQLSERVER 注意事项(附dll文件下载)
2012/06/28 PHP
PHP学习笔记(二):变量详解
2015/04/17 PHP
Yii2 rbac权限控制操作步骤实例教程
2016/04/29 PHP
php源码之将图片转化为data/base64数据流实例详解
2016/11/27 PHP
php防止sql注入的方法详解
2017/02/20 PHP
PHP堆栈调试操作简单示例
2018/06/15 PHP
Yii框架中使用PHPExcel的方法分析
2019/07/25 PHP
PHP fopen中文文件名乱码问题解决方案
2020/10/28 PHP
JavaScript CSS菜单功能 改进版
2008/12/20 Javascript
密码框显示提示文字jquery示例
2013/08/29 Javascript
JS获取IP、MAC和主机名的五种方法
2013/11/14 Javascript
jquery实现下拉菜单的二级联动利用json对象从DB取值显示联动
2014/03/27 Javascript
JS跨域请求外部服务器的资源
2017/02/06 Javascript
javascript标准库(js的标准内置对象)总结
2018/05/26 Javascript
新手必须知的Node.js 4个JavaScript基本概念
2018/09/16 Javascript
Vue实现一个无限加载列表功能
2018/11/13 Javascript
微信小程序动态添加view组件的实例代码
2019/05/23 Javascript
Elementui表格组件+sortablejs实现行拖拽排序的示例代码
2019/08/28 Javascript
python实现搜索指定目录下文件及文件内搜索指定关键词的方法
2015/06/28 Python
Python 实现简单的电话本功能
2015/08/09 Python
python实现媒体播放器功能
2018/02/11 Python
python使用代理ip访问网站的实例
2018/05/07 Python
python实现通过flask和前端进行数据收发
2019/08/22 Python
Python.append()与Python.expand()用法详解
2019/12/18 Python
Python日期格式和字符串格式相互转换的方法
2020/02/18 Python
深入浅析Python代码规范性检测
2020/07/31 Python
HTML5给汉字加拼音收起展开组件的实现代码
2020/04/08 HTML / CSS
澳大利亚领先的运动鞋商店:Hype DC
2018/03/31 全球购物
问卷调查计划书
2014/01/10 职场文书
中文教师求职信
2014/02/22 职场文书
英语课外活动总结
2014/08/27 职场文书
社区母亲节活动总结
2015/02/10 职场文书
清洁工个人工作总结
2015/03/05 职场文书