python zipfile使用
2024-10-06 13:40:53
the Python challenge中第6关使用到zipfile模块,于是记录下zipfile的使用
zip日常使用只要是压缩跟解压操作,于是从这里入手
1、压缩
f=zipfile.ZipFile(file, mode="r", compression=ZIP_STORED, allowZip64=False)
创建一个zip文件对象,压缩是需要把mode改为‘w’,这个是源码中的注释Open the ZIP file with mode read "r", write "w" or append "a",a为追加压缩,不会清空原来的zip
f.write(filename)
将文件写入zip文件中,即将文件压缩
f.close()
将zip文件对象关闭,与open一样可以使用上下文with as
import zipfile with zipfile.ZipFile('test.zip', mode='w') as zipf:
zipf.write('channel.zip')
zipf.write('zip_test.py') zipf = zipfile.ZipFile('test.zip')
print zipf.namelist()
2、解压
f.extract(directory)和f.exractall(directory)
import zipfile zipf = zipfile.ZipFile('test.zip') zipf.extractall('channel1')#将所有文件解压到channel1目录下
高级应用
1 zipfile.is_zipfile(filename)
判断一个文件是不是压缩文件
2 ZipFile.namelist()
返回文件列表
3 ZipFile.open(name[, mode[, password]])
打开压缩文档中的某个文件
if zipfile.is_zipfile('test.zip'): #is_zipfile() 判断是否似zip文件
f = zipfile.ZipFile('test.zip')
files = f.namelist() #namelist() 返回zip压缩包中的所有文件
print 'files:', files
mess = f.open('channel/readme.txt') #打开zip压缩包中的某个文件,可读可写
print 'mess:', mess.read()
f.close()
最新文章
- We have a problem with promises
- How Google TestsSoftware - Part One
- 64位 ubuntu android studio gradle 权限不够 缺少文件和权限导致
- Oracle DBA从小白到入职实战应用
- 介绍一些实用的IOS手势识别库 (COCOS2D)
- asp.net httpmodule问题
- Ambari安装组件出错
- 兼容ie7以上的 placeholder属性
- ●BZOJ 1797 [Ahoi2009]Mincut 最小割
- 在Windows Service 2012上安装IIS 8.0 IIS 6
- sqlserver中分区函数 partition by与 group by 区别 删除关键字段重复列
- AngularJS中监视Scope变量以及外部调用Scope方法
- zabbix监控k8s出现的pod error status
- 如何下载一个物种的全部EST序列 | NCBI | 表达序列标签
- 【百度统计】设置页面元素点击事件转化pv、uv
- JDK环境变量的配置说明
- Javascript replace 为什么只替换一个字符?
- SpringBoot集成Mybatis-PageHelper分页工具类,实现3步完成分页
- js学习笔记知识点
- Visual studio之C#实现数字输入模拟键盘