Python zipfile模块(压缩解压zip)
目录
常用函数介绍
ZipFile.getinfo(name)
ZipFile.infolist()
ZipFile.namelist()
ZipFile.extractall(member[, path[, pwd]])
ZipFile.extract(member[, path[, pwd]])
ZipFile.printdir()
ZipFile.setpassword(pwd)
ZipFile.read(name[, pwd])
ZipFile.write(filename[, arcname[, compress_type]])
ZipFile.writestr(zinfo_or_arcname, bytes)
ZipFile.getinfo(name)
常用函数介绍
ZipFile.getinfo(name)
功能:获取zip文档内指定文件的信息。返回一个zipfile.ZipInfo对象,它包括文件的详细信息。将在下面 具体介绍该对象。
ZipFile.infolist()
功能:获取zip文档内所有文件的信息,返回一个zipfile.ZipInfo的列表。
ZipFile.namelist()
功能:获取zip文档内所有文件的名称列表。
ZipFile.extractall(member[, path[, pwd]])
功能:将zip文档内的指定文件解压到当前目录。
参数:
- member 指定要解压的文件名称或对应的ZipInfo对象
- path 指定解析文件保存的文件夹
- pwd 解压密码
实例
from zipfile import ZipFile, BadZipfilewith ZipFile(zip_path, "r") as archive:try:archive.extractall(path=extract_path, pwd=password)except BadZipfile:print("Invalid Zip file")
ZipFile.extract(member[, path[, pwd]])
功能:将zip文档内的指定文件解压到当前目录。
参数:
- member 指定要解压的文件名称或对应的ZipInfo对象
- path 指定解析文件保存的文件夹
- pwd 解压密码
实例
import zipfile, oszipFile = zipfile.ZipFile(os.path.join(os.getcwd(), 'txt.zip'))
for file in zipFile.namelist():zipFile.extract(file, r'd:/Work')
zipFile.close()
ZipFile.printdir()
功能:将zip文档内的信息打印到控制台上。
ZipFile.setpassword(pwd)
功能:设置zip文档的密码。
ZipFile.read(name[, pwd])
功能:获取zip文档内指定文件的二进制数据。
例子演示了read()的使用,zip文档内包括一个txt.txt的文本文件,使用read()方法读取其二进制数据,然后保存到D:/txt.txt。
import zipfile, oszipFile = zipfile.ZipFile(os.path.join(os.getcwd(), 'txt.zip'))
data = zipFile.read('txt.txt')#一行语句就完成了写文件操作。仔细琢磨哦~_~
(lambda f, d: (f.write(d), f.close()))(open(r'd:/txt.txt', 'wb'), data)zipFile.close()
ZipFile.write(filename[, arcname[, compress_type]])
功能:将指定文件添加到zip文档中。
参数:
- filename 文件路径
- arcname 添加到zip文档之后保存的名称
- compress_type 压缩方法,它的值可以是zipfile.ZIP_STORED 或zipfile.ZIP_DEFLATED
ZipFile.writestr(zinfo_or_arcname, bytes)
功能:writestr()支持将二进制数据直接写入到压缩文档。
ZipFile.getinfo(name)
功能:返回一个ZipInfo对象,表示zip文档中相应文件的信息。
它支持如下属性:
- ZipInfo.filename 获取文件名称。
- ZipInfo.date_time 获取文件最后修改时间。返回一个包含6个元素的元组:(年, 月, 日, 时, 分, 秒)
- ZipInfo.compress_type 压缩类型。
- ZipInfo.comment 文档说明。
- ZipInfo.extr 扩展项数据。
- ZipInfo.create_system 获取创建该zip文档的系统。
- ZipInfo.create_version 获取、创建zip文档的PKZIP版本。
- ZipInfo.extract_versio 获取、解压zip文档所需的PKZIP版本。
- ZipInfo.reserved 预留字段,当前实现总是返回0。
- ZipInfo.flag_bits zip标志位。
- ZipInfo.volume 文件头的卷标。
- ZipInfo.internal_attr 内部属性。
- ZipInfo.external_attr 外部属性。
- ZipInfo.header_offset 文件头偏移位。
- ZipInfo.CRC 未压缩文件的CRC-32。
- ZipInfo.compress_size 获取压缩后的大小。
- ZipInfo.file_size 获取未压缩的文件大小
Python zipfile模块(压缩解压zip)相关推荐
- Python压缩解压zip,Django下载zip文件
Python压缩解压zip 压缩 import zipfile def convert_zip(zip_path, save_path):'''# zip_path 要压缩文件的路径# save_pa ...
- android zip格式应用,Android 压缩解压zip文件
Android 压缩解压zip文件 上次写了个解压缩功能,但有局限性,比如压缩文件xx.zip 里包括子目录的情况下,执行上次解压缩的功能就不能实现我们想要的效果,于是在网上参考了一下java的解压缩 ...
- VC++压缩解压zip文件(支持密码)
只能压缩解压zip格式的,不需要dll或者库文件,核心是HZIP,支持带密码压缩解压(但是有时不完美,属于HZIP本身的问题,请不要纠结这一点). 以下为核心封装文件,建议大家下载源代码查看,下载地址 ...
- 使用InfoZip压缩解压zip文件
使用InfoZip压缩解压zip文件 源码下载地址:http://download.csdn.net/detail/risingsun001/4254821 先贴部分源码: void CInfozip ...
- C#压缩解压zip 文件
我在做项目的时候需要将文件进行压缩和解压缩,于是就从http://www.icsharpcode.net下载了关于压缩和解压缩的源码,但是下载下来后,面对这么多的代码,一时不知如何下手.只好耐下心来, ...
- C# .NET 使用DotNetZip开源类库 处理 压缩/解压 Zip 处理乱码情况
dotNetZip on CodePlex: http://dotnetzip.codeplex.com/ 压缩/解压/重命名: //1.压缩//指定编码,防止中文乱码情况using (ZipFile ...
- 【分享】AspxZip v2.0 在线压缩解压ZIP文档
下载地址: http://download.csdn.net/detail/rrrfff/5756977 当前版本:2.0.20140609 AspxZip v2.0 特点: 1.能够在支持 ASP. ...
- Linux的tar打包压缩解压zip/gz/bz2/xz用法细讲
当存在大量文件目录需要整合时,我们经常会选择用tar指令将其打包在一起再进行处理. t a r 指 令 \color{blue}{tar指令} tar指令: tar ###打包文件[将多个文件放在一起 ...
- 压缩解压zip文件包
import java.io.*;import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory ...
最新文章
- Quart 2D 绘制图形简单总结
- 计网链路层mac地址和ip地址缺一不可
- ArcSDE直连提示Server library could not be loaded解决方法
- 为什么说ReasonReact是编写React的最佳方式?
- 201709-5 除法 ccf(树状数组)
- Tesseract入门-VS2015下调用Tesseract4.0 +win7 64位系统
- zxing二维码的生成与解码(C#)
- Java中的关键字汇总(50个)
- Linux bz2 解压命令
- 计算机内存不足16g内存,高手亲自教你win10 16g内存显示内存不足的修复要领
- 超级简单基于spring boot高速公路收费系统的设计与实现.rar(含源码及数据库文件)
- ctfshow 密码挑战(上)
- 韵达快递 | 快递单号查询API
- iphone文件服务器权限,苹果手机怎么开启文件共享权限
- icns文件怎么打开_Mac快速生成icns图标文件 | kTWO-个人博客
- 易语言多线程崩溃解决的原因
- 基于MATLAB的GMSK调制解调系统的设计仿真
- php echo 后必须die,die 提示的消息都去哪了?
- tewa-800g请输入正确的管理员账户_tp-link路由器如何设置管理员身份绑定 路由器设置管理员身份绑定方法【介绍】...
- STC89C52电子时钟
热门文章
- python操作windows库_python大佬养成计划----win下对数据库的操作
- STM32----SysTick实现监控开机时长
- 基本定时器TIM6和TIM7使用
- 我被跨系统的换行符折磨疯了~~~
- gggenes绘制多物种基因结构比较
- 不一样 使用别名 数据字段和bean_【修炼内功】[spring-framework] [3] Bean是如何创建又是如何销毁的?...
- uni怎么使用原生html标签,uni-app如何完美解析富文本内容
- python读awx文件_ansible awx用法
- cuda笔记-一个Block多线程求卷积
- Arduino笔记-Rouch Sensor的使用