python zipfile压缩_Python压缩模块zipfile实现原理及用法解析
一、python壓縮模塊簡(jiǎn)介
python直接通過(guò)內(nèi)置壓縮模塊可以直接進(jìn)行壓縮文件的創(chuàng)建;
內(nèi)置模塊 zipfile/rarfile 完成壓縮文件的操作。
二、 zipfile模塊基礎(chǔ)使用
2.1 對(duì)一個(gè)文件進(jìn)行zip壓縮
# 把當(dāng)前目錄的test.txt文件壓縮到a.zip壓縮包中
import zipfile
f = zipfile.ZipFile('a.zip', 'w', zipfile.ZIP_DEFLATED)
f.write('test.txt')
f.close()
上述代碼中:
a.zip是壓縮后要保存的文件名
w 表示寫(xiě)入壓縮文件的含義
ZIP_DEFLATED表示壓縮;ZIP_STORE表示只打包,不壓縮(類似Linux中的gz跟tar格式)
write方法:目前填寫(xiě)的參數(shù) test.txt 為當(dāng)前目錄下的文件,它表示要壓縮的文件。
2.2 對(duì)一個(gè)zip壓縮文件進(jìn)行解壓縮
# 把當(dāng)前目錄的a.zip壓縮包中的test.txt進(jìn)行解壓
import zipfile
f = zipfile.ZipFile('a.zip','r')
f.extract('test.txt')
上述代碼中:
a.zip 是當(dāng)前目前下的壓縮包文件,該壓縮包目前只壓縮了一個(gè) test.txt 文件
extract() 方法的作用就用來(lái)進(jìn)行解壓縮,參數(shù)填寫(xiě)的是 a.zip 壓縮包中必須包含的文件名信息
如果我不知道壓縮包中包含了什么文件信息,那就比較麻煩。可以用namelist()方法解決,如下2.3
2.3 對(duì)一個(gè)zip壓縮文件中的所有文件進(jìn)行解壓縮
import zipfile
f = zipfile.ZipFile('a.zip','r')
for file in f.namelist():
f.extract(file,'./temp')
上述代碼中:
namelist()方法返回壓縮包中包含的所有文件信息,返回值為 list 類型
通過(guò)循環(huán)的方式把所有都進(jìn)行解壓到 當(dāng)前目錄下的temp目錄
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持。
總結(jié)
以上是生活随笔為你收集整理的python zipfile压缩_Python压缩模块zipfile实现原理及用法解析的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: Oracle执行计划解释
- 下一篇: Redis3.2.5部署(单节点)