电脑知识|欧美黑人一区二区三区|软件|欧美黑人一级爽快片淫片高清|系统|欧美黑人狂野猛交老妇|数据库|服务器|编程开发|网络运营|知识问答|技术教程文章 - 好吧啦网

您的位置:首頁技術文章
文章詳情頁

Python模塊zipfile原理及使用方法詳解

瀏覽:109日期:2022-07-15 10:32:40

zipfile是python里用來做zip格式編碼的壓縮和解壓縮的,由于是很常見的zip格式,所以這個模塊使用頻率也是比較高的

zipfile里有兩個非常重要的class, 分別是ZipFile和ZipInfo, 在絕大多數(shù)的情況下,我們只需要使用這兩個class就可以了。

ZipFile是主要的類,用來創(chuàng)建和讀取zip文件

ZipInfo是存儲的zip文件的每個文件的信息的。

比如要讀取一個zipfile,這里假設filename是一個文件的路徑:

import zipfilez = zipfile.ZipFile(filename, ’r’) # 這里的第二個參數(shù)用r表示是讀取zip文件,w是創(chuàng)建一個zip文件for f in z.namelist(): print f

上面的代碼是讀取一個zip壓縮包里所有文件的名字。z.namelist() 會返回壓縮包內(nèi)所有文件名的列表。

再看看下面一個:

import zipfilez = zipfile.ZipFile(filename, ’r’)for i in z.infolist(): print i.file_size, i.header_offset

這里使用了z.infolist(), 它返回的就是壓縮包內(nèi)所有文件的信息,就是一個ZipInfo的列表。一個ZopInfo對象中包含了壓縮包內(nèi)一個文件的信息,其中比較常用的是 filename, file_size, header_offset, 分別為文件名,文件大小,文件數(shù)據(jù)在壓縮包中的偏移。其實之前的z.namelist()就是讀取的ZopInfo中的filename,組成一個 list返回的。

從壓縮包里解壓縮出一個文件的方法是使用ZipFile的read方法:

import zipfilez = zipfile.ZipFile(filename, ’r’)print z.read(z.namelist()[0])

這樣就讀取出z.namelist()中的第一個文件,并且輸出到屏幕,當然也可以把它存儲到文件。

下面是創(chuàng)建zip壓縮包的方法:

與讀取的方法其實很類似的:

import zipfile, osz = zipfile.ZipFile(filename, ’w’) # 注意這里的第二個參數(shù)是w,這里的filename是壓縮包的名字#假設要把一個叫testdir中的文件全部添加到壓縮包里(這里只添加一級子目錄中的文件):if os.path.isdir(testdir): for d in os.listdir(testdir): z.write(testdir+os.sep+d)# close() 是必須調(diào)用的!z.close()

上面的代碼非常的簡單。

想想還有一個問題,如果我把一個test/111.txt 添加到壓縮包里之后我希望在包里它放到test22/111.txt怎么辦呢?

其實這個就是ZipFile的write方法中第二個參數(shù)的作用了。只需要這樣調(diào)用:z.write('test/111.txt', 'test22/111.txt')

以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 双齿辊破碎机-大型狼牙破碎机视频-对辊破碎机价格/型号图片-金联机械设备生产厂家 | 智慧旅游_智慧景区_微景通-智慧旅游景区解决方案提供商 | 氧化铝球_高铝球_氧化铝研磨球-淄博誉洁陶瓷新材料有限公司 | 润东方环保空调,冷风机,厂房车间降温设备-20年深圳环保空调生产厂家 | 净化工程_无尘车间_无尘车间装修-广州科凌净化工程有限公司 | 船老大板材_浙江船老大全屋定制_船老大官网 | POM塑料_PBT材料「进口」聚甲醛POM杜邦原料、加纤PBT塑料报价格找利隆塑料 | 防水套管|柔性防水套管|伸缩器|伸缩接头|传力接头-河南伟创管道 防水套管_柔性防水套管_刚性防水套管-巩义市润达管道设备制造有限公司 | 齿轮减速电机一体机_蜗轮蜗杆减速马达-德国BOSERL齿轮减速机带电机生产厂家 | 有机肥设备生产制造厂家,BB掺混肥搅拌机、复合肥设备生产线,有机肥料全部加工设备多少钱,对辊挤压造粒机,有机肥造粒设备 -- 郑州程翔重工机械有限公司 | 2025第九届世界无人机大会 | 油罐车_加油机_加油卷盘_加油机卷盘_罐车人孔盖_各类球阀_海底阀等车用配件厂家-湖北华特专用设备有限公司 | 杭州网络公司_百度SEO优化-外贸网络推广_抖音小程序开发-杭州乐软科技有限公司 | 膜片万向弹性联轴器-冲压铸造模具「沧州昌运模具」 | 天坛家具官网| 无锡装修装潢公司,口碑好的装饰装修公司-无锡索美装饰设计工程有限公司 | 论文查重_免费论文查重_知网学术不端论文查重检测系统入口_论文查重软件 | 数显水浴恒温振荡器-分液漏斗萃取振荡器-常州市凯航仪器有限公司 | 电动高尔夫球车|电动观光车|电动巡逻车|电动越野车厂家-绿友机械集团股份有限公司 | 考勤系统_考勤管理系统_网络考勤软件_政企|集团|工厂复杂考勤工时统计排班管理系统_天时考勤 | 上海洗地机-洗地机厂家-全自动洗地机-手推式洗地机-上海滢皓洗地机 | 江西自考网 | 齿轮减速电机一体机_蜗轮蜗杆减速马达-德国BOSERL齿轮减速机带电机生产厂家 | 农业四情_农业气象站_田间小型气象站_智慧农业气象站-山东风途物联网 | 澳威全屋定制官网|极简衣柜十大品牌|衣柜加盟代理|全屋定制招商 百度爱采购运营研究社社群-店铺托管-爱采购代运营-良言多米网络公司 | 儿童乐园|游乐场|淘气堡招商加盟|室内儿童游乐园配套设备|生产厂家|开心哈乐儿童乐园 | 河南凯邦机械制造有限公司| 乐之康护 - 专业护工服务平台,提供医院陪护-居家照护-居家康复 | 碳纤维布-植筋胶-灌缝胶-固特嘉加固材料公司| 青州开防盗门锁-配汽车芯片钥匙-保险箱钥匙-吉祥修锁店 | 存包柜厂家_电子存包柜_超市存包柜_超市电子存包柜_自动存包柜-洛阳中星 | 板式换网器_柱式换网器_自动换网器-郑州海科熔体泵有限公司 | 华禹护栏|锌钢护栏_阳台护栏_护栏厂家-华禹专注阳台护栏、楼梯栏杆、百叶窗、空调架、基坑护栏、道路护栏等锌钢护栏产品的生产销售。 | 探鸣起名网-品牌起名-英文商标起名-公司命名-企业取名包满意 | 浙江浩盛阀门有限公司| 培训一点通 - 合肥驾校 - 合肥新亚驾校 - 合肥八一驾校 | 大米加工设备|大米加工机械|碾米成套设备|大米加工成套设备-河南成立粮油机械有限公司 | 有机肥设备生产制造厂家,BB掺混肥搅拌机、复合肥设备生产线,有机肥料全部加工设备多少钱,对辊挤压造粒机,有机肥造粒设备 -- 郑州程翔重工机械有限公司 | 泰兴市热钻机械有限公司-热熔钻孔机-数控热熔钻-热熔钻孔攻牙一体机 | 河南彩印编织袋,郑州饲料编织袋定制,肥料编织袋加工厂-盛军塑业 河南凯邦机械制造有限公司 | 耐火砖厂家,异形耐火砖-山东瑞耐耐火材料厂 |