Python壓縮模塊zipfile實(shí)現(xiàn)原理及用法解析
一、python壓縮模塊簡介
python直接通過內(nèi)置壓縮模塊可以直接進(jìn)行壓縮文件的創(chuàng)建;
內(nèi)置模塊 zipfile/rarfile 完成壓縮文件的操作。
二、 zipfile模塊基礎(chǔ)使用
2.1 對一個(gè)文件進(jìn)行zip壓縮
# 把當(dāng)前目錄的test.txt文件壓縮到a.zip壓縮包中import zipfilef = zipfile.ZipFile(’a.zip’, ’w’, zipfile.ZIP_DEFLATED)f.write(’test.txt’)f.close()
上述代碼中:
a.zip是壓縮后要保存的文件名 w 表示寫入壓縮文件的含義 ZIP_DEFLATED表示壓縮;ZIP_STORE表示只打包,不壓縮(類似Linux中的gz跟tar格式) write方法:目前填寫的參數(shù) test.txt 為當(dāng)前目錄下的文件,它表示要壓縮的文件。2.2 對一個(gè)zip壓縮文件進(jìn)行解壓縮
# 把當(dāng)前目錄的a.zip壓縮包中的test.txt進(jìn)行解壓import zipfilef = zipfile.ZipFile(’a.zip’,’r’)f.extract(’test.txt’)
上述代碼中:
a.zip 是當(dāng)前目前下的壓縮包文件,該壓縮包目前只壓縮了一個(gè) test.txt 文件
extract() 方法的作用就用來進(jìn)行解壓縮,參數(shù)填寫的是 a.zip 壓縮包中必須包含的文件名信息
如果我不知道壓縮包中包含了什么文件信息,那就比較麻煩。可以用namelist()方法解決,如下2.3
2.3 對一個(gè)zip壓縮文件中的所有文件進(jìn)行解壓縮
import zipfilef = zipfile.ZipFile(’a.zip’,’r’)for file in f.namelist(): f.extract(file,’./temp’)
上述代碼中:
namelist()方法返回壓縮包中包含的所有文件信息,返回值為 list 類型
通過循環(huán)的方式把所有都進(jìn)行解壓到 當(dāng)前目錄下的temp目錄
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. 理解PHP5中static和const關(guān)鍵字2. Android table布局開發(fā)實(shí)現(xiàn)簡單計(jì)算器3. jQuery 實(shí)現(xiàn)DOM元素拖拽交換位置的實(shí)例代碼4. IntelliJ IDEA安裝插件的方法步驟5. php模擬實(shí)現(xiàn)斗地主發(fā)牌6. vue 使用localstorage實(shí)現(xiàn)面包屑的操作7. Vue封裝一個(gè)TodoList的案例與瀏覽器本地緩存的應(yīng)用實(shí)現(xiàn)8. Python random庫使用方法及異常處理方案9. .Net Core使用Coravel實(shí)現(xiàn)任務(wù)調(diào)度的完整步驟10. Vuex localStorage的具體使用

網(wǎng)公網(wǎng)安備