Python壓縮模塊zipfile實現(xiàn)原理及用法解析
一、python壓縮模塊簡介
python直接通過內置壓縮模塊可以直接進行壓縮文件的創(chuàng)建;
內置模塊 zipfile/rarfile 完成壓縮文件的操作。
二、 zipfile模塊基礎使用
2.1 對一個文件進行zip壓縮
# 把當前目錄的test.txt文件壓縮到a.zip壓縮包中
import zipfile
f = 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方法:目前填寫的參數 test.txt 為當前目錄下的文件,它表示要壓縮的文件。
2.2 對一個zip壓縮文件進行解壓縮
# 把當前目錄的a.zip壓縮包中的test.txt進行解壓
import zipfile
f = zipfile.ZipFile('a.zip','r')
f.extract('test.txt')
上述代碼中:
a.zip 是當前目前下的壓縮包文件,該壓縮包目前只壓縮了一個 test.txt 文件
extract() 方法的作用就用來進行解壓縮,參數填寫的是 a.zip 壓縮包中必須包含的文件名信息
如果我不知道壓縮包中包含了什么文件信息,那就比較麻煩??梢杂胣amelist()方法解決,如下2.3
2.3 對一個zip壓縮文件中的所有文件進行解壓縮
import zipfile
f = zipfile.ZipFile('a.zip','r')
for file in f.namelist():
f.extract(file,'./temp')
上述代碼中:
namelist()方法返回壓縮包中包含的所有文件信息,返回值為 list 類型
通過循環(huán)的方式把所有都進行解壓到 當前目錄下的temp目錄
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Python functools.lru_cache裝飾器性能提升利器深入探究
本文將詳細介紹functools.lru_cache裝飾器的原理、用法以及適當的場景,以幫助你更好地利用這一功能,它可以用來緩存函數的輸出,以避免重復計算,從而顯著提高程序的執(zhí)行速度2024-01-01
Mac中安裝anaconda并配置虛擬環(huán)境的詳細過程
這篇文章主要給大家介紹了關于Mac中安裝anaconda并配置虛擬環(huán)境的詳細過程,anaconda是包管理器和環(huán)境管理器,使用它可以方便地創(chuàng)作,文中通過圖文介紹的非常詳細,需要的朋友可以參考下2023-10-10
Python實現(xiàn)基于二叉樹存儲結構的堆排序算法示例
這篇文章主要介紹了Python實現(xiàn)基于二叉樹存儲結構的堆排序算法,結合實例形式分析了Python二叉樹的定義、遍歷及堆排序算法相關實現(xiàn)技巧,需要的朋友可以參考下2017-12-12
在CentOS上配置Nginx+Gunicorn+Python+Flask環(huán)境的教程
這篇文章主要介紹了在CentOS上配置Nginx+Gunicorn+Python+Flask環(huán)境的教程,包括安裝supervisor來管理進程的用法,整套配下來相當實用,需要的朋友可以參考下2016-06-06

