python zip压缩_Python zip压缩与解压(zipfile模块实例)

python中提供了文件压缩的zipfile模块。

zipfile模块() 用于压缩文件成zip及解压zip文件,模块介绍如下。

zipfile.ZipFile(file, mode) open a ZIP file,where file can be either a path to a file or a file-like object. mode can be read “r” , write “w”, or append “a”以某种模式打开ZIP 文档。

默认值为’r’ 表示读已经存在的zip文件,‘w’ 表示新建一个zip文档或覆盖一个存在的同名zip文档, ‘a’ 表示将数据附加到一个现存的zip文档中。

在 class zipfile.ZipFile中有如下模块:

ZipFile.namelist() return a list of archive members by name. 返回一个列表包含zipfile里面的文件

ZipFile.close() close the archive file。当解压完zip文件以后关闭zipfile.

ZipFile.extractall(self, path=None, members=None, pwd=None) Extract all members from the archive to the current working directory. Path specified a different directory to extract to. Member is optional and must be subset of the list returned by namelist().

解压全部文件到当前路径,也可以加压到指定路径。

ZipFile.extract(self, member, path=None, pwd=None) extract a member from the archive to the current working directory, member must be its full name. 从ZIP文件里解压一个文件到当前路径,该文件必须以全名给定。

ZipFile.setpassword(pwd) set pwd as default password to extract encrypted files. 设置一个默认密码用于解压文件。

ZipFile.write(filename) write the file named filename to the archive. 将文件写入zip文档。

例1,压缩文件成zip包 代码示例:

import zipfile

import sys

import os

filepath = sys.argv[1]

outputpath = sys.argv[2]

os.chdir(filepath)

filelist = os.listdir(filepath) # list the files need to achieve

zipfilename = filepath.split("/")[-1] #fetch the last name of path as zipfile name

ZipFileobj = zipfile.ZipFile(filepath+"/"+ zipfilename +".zip", 'w') #create a zip file

for files in filelist:# use “for” to add files into zip file

ZipFileobj.write(files)

ZipFileobj.close()

print "zipfile already created!"

例2,解压zip包 代码示例:

import zipfile

import sys

zipfilepath = sys.argv[1]

outputpath = sys.argv[2]

print zipfilepath

zipfiles = zipfile.ZipFile(zipfilepath, "r")

zipfiles.extractall(outputpath)

zipfiles.close()

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/513793.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

以系统化视角反观产品运营,解读提升用户转化的“四部曲”

简介: 正常的活动运营通常会围绕公司经营目标,针对不同性质、不同类型的活动开展工作。这样的活动一般会分四个阶段:活动准备、活动策划、活动执行与活动复盘阶段。 作者:友盟数据大使 Suffering 如今,移动互联网的红…

移动云亮相 2021 IDC 年度盛典 共话变革与赋能

“过去一年,是考验各行业在面临多重挑战时保持数字弹性能力的一年。未来十年,是数字化转型成为企业主旋律、加速推进的十年。”10月15日,由IDC中国主办的“2021第六届IDC中国数字化转型年度盛典”在上海圆满落幕。盛典以“数字焕颜 科技有型”…

2021计算机应用基础形考答案模块2,国家开放大学计算机应用基础模块2形考答案-20210603091431.docx-原创力文档...

WORD格式可编辑Word2010 上机操作题(共5 题, 4 分 / 题)1.输入下列文字并以Word1.docx 名存盘:内容提要建筑艺术为表现性艺术,通过面、体形、体量、空间、群体与环境处理等多种艺术语言,创造情绪氛围,体现深刻地文化内…

春色满园关不住,带你体验阿里云 Knative

简介: Knative 是基于 Kubernetes 的开源 Serverless 应用编排框架。阿里云 Knative 在社区Knative基础之上,与阿里云产品进行了深度的融合,给你带来最纯粹的容器化 Serverless 体验。 Knative 是基于 Kubernetes 的开源 Serverless 应用编排…

python选择排序算法图解_python基本算法之实现归并排序(Merge sort)

0、前言 评判一个算法的好坏的标准: 时间复杂度 空间复杂度 1、归并排序算法是什么? 冒泡排序(Bubble Sort)是一种建立在归并操作上面的一种有效的排序算法,由John von neumann于1945年发明。采用分治法(Divide and Conquer&#…

从前端智能化看“低代码/无代码”

简介: 什么是低代码/无代码开发?业界对于低代码/无代码开发是否存在其他不同的理解?低代码开发和无代码开发之间的区别是什么? 作者 | 甄子 来源 | 阿里技术公众号 一 概念 1 什么是低代码/无代码开发?业界对于低代码…

SAP 导出 HTML,【我sap这导出数据表格export.mhtml怎么转换为 excel 工作表.xlsx】excel生成html表格数据...

如何把Html网页格式转成Excel表格1、单击数据--导部数据--新建Web查询。2、勾选我可以此内容,允许播放,单击继续按钮。3、在地址栏输入网站地址,转到此网站里面。4、跳转到指定网页,点击箭头按钮,然后导入数据到Excel。…

初二物理模型有哪些_暑假新初二、新初三的数学该怎么学,教辅怎么买,题该怎么刷?看这里~...

这个暑假对于新初二和新初三的孩子都非常关键,因为下一学期的数学难度都要上升一个台阶,自古相传一句老话“初二两极分化,初三天上地下”,其实引起这么大化学反应的原因就是在于数学和科学这两门理科在八上和九上有了一个质变。我…

低代码会让程序员更加内卷吗?

作者| Mr.K 编辑| Emma来源| 技术领导力(ID:jishulingdaoli)今天的主题呢主要是来源于最近的一个很火的话题——『低代码』。低代码会不会让程序员更加内卷?要回答这个问题,需要先弄清楚:低代码适合做什么,不适合做什…

技术干货 | 应用上线前的“体检”,你知道需要检测哪些指标吗?

简介: 应用上线前检测哪些项目?如何检测?检测数据指标包括哪些? 随着越来越多的企业基于 mPaaS 搭建并上线新的 App,App 的上线质量也成为各个客户关注的重点。上线前检测哪些项目?如何检测?检…

python 机器学习_基于 Python 语言的机器学习工具Sklearn

本篇介绍了Sklearn机器学习基础,从Sklearn的简介,模块以及与tensorflow的优劣势对比来了解基于Python语言的机器学习工具。01、Sklearn简介sklearn(scikit-learn)是Python重要的学习库,它封装了机器学习中常用的算法,包括监督学习…

那些你不知道的TCP冷门知识!

简介: 最近在做数据库相关的事情,碰到了很多TCP相关的问题,新的场景新的挑战,有很多之前并没有掌握透彻的点,大大开了一把眼界,选了几个案例分享一下。 最近在做数据库相关的事情,碰到了很多TC…

西门子触摸屏和计算机网络,西门子触摸屏与计算机连接不上

1.1 1代精彩面板仅支持使用PPI电缆(RS232-PPI和USB-PPI)下载程序,操作步骤如下:使用PPI下载方式,组态电脑需要使用RS232/PPI电缆或USB/PPI电缆与面板相连。订货号分别如下:RS232/PPI电缆:6ES7901-3CB30-0XA0USB/PPI电缆…

CPU 可以跑多快?地球到火星的距离告诉你!

来源:码农的荒岛求生作者:码农的荒岛求生这张出自Google大神 Jeff Dean的图,展示系统中各种关键操作的时延具体有多少。需要注意的是这张图上的数据自2012年后就没有再更新过了,统计自2020年的最新数据见这里:这张图中…

步进电机五根线怎么接_步进驱动和伺服驱动的区别

概述步进电机主要是依相数来做分类,而其中又以二相、五相步进电机为目前市场上所广泛采用。二相步进电机每转最细可分割为400等分,五相则可分割为1000等分,所以表现出来的特性以五相步进电机较佳、加减速时间较短、动态惯性较低。随着全数字式…

可观测告警运维系统调研——SLS告警与多款方案对比

简介: 本文介绍对比多款告警监控运维平台方案,覆盖阿里云SLS、Azure、AWS、自建系统(ELK、Prometheus、TICK)等方案。 前言 本篇是SLS新版告警系列宣传与培训的第三篇,后续我们会推出20系列直播与实战培训视频&#…

HTML和css学术报告,清华大学 张超 副教授访问我院并做学术报告

应凌振老师邀请,清华大学张超老师于7月9日(周五)下午2:30在计算机楼三楼313会议室来我院做学术报告,具体情况如下。报告题目:智能漏洞攻防技术报告时间:7月9日(周五)下午2:30报告地点:九龙湖校区计算机楼三楼313会议室报告摘要&am…

Flagger on ASM·基于Mixerless Telemetry实现渐进式灰度发布系列 1 遥测数据

简介: 服务网格ASM的Mixerless Telemetry技术,为业务容器提供了无侵入式的遥测数据。遥测数据一方面作为监控指标被ARMPS/prometheus采集,用于服务网格可观测性;另一方面被HPA和flaggers使用,成为应用级扩缩容和渐进式…

有乳胶枕吗_小耳朵猪、黑木耳面条、乳胶枕……吃喝玩乐穿用样样都有!松江这个展销会,你去了吗?...

小耳朵猪、黑木耳面条……在松江新理想商业广场的这个展销会上,这些松江尝不到的特色农产品吸引眼球。2020年松江对口帮扶西双版纳特色农产品展销会今天开幕。为期5天的展销会里,特色农产品、旅游景点、橡胶制品、民族服饰等西双版纳特色商品集中展销&am…

Flagger on ASM——基于Mixerless Telemetry实现渐进式灰度发布系列 2 应用级扩缩容

简介: 应用级扩缩容是相对于运维级而言的。像监控CPU/内存的利用率就属于应用无关的纯运维指标,针对这种指标进行扩缩容的HPA配置就是运维级扩缩容。而像请求数量、请求延迟、P99分布等指标就属于应用相关的,或者叫业务感知的监控指标。 本篇…