python zipfile壓縮使用說明

2021-10-23 13:54:03 字數 1353 閱讀 9638

壓縮

f=zipfile.zipfile(

file

, mode=

"r", compression=zip_stored, allowzip64=

false

)

f.write(filename)
將檔案寫入zip檔案中,即將檔案壓縮

f.close()

將zip檔案物件關閉,與open一樣可以使用上下文with as

write有2個可選引數:zipfile.write(『原檔名』,『壓縮後的檔名』) #第乙個是必填,第二個選填

下面放個小demo

'''

'''import zipfile

import os

defzipdir

(dirpath,outfullname,name)

:"""

壓縮指定資料夾

:param dirpath: 目標資料夾路徑

:param outfullname: 壓縮檔案儲存路徑+***x.zip

:return: 無

"""zip= zipfile.zipfile(outfullname,

"a",zipfile.zip_deflated)

for path,dirnames,filenames in os.walk(dirpath)

:# 去掉目標跟路徑,只對目標資料夾下邊的檔案及資料夾進行壓縮

fpath = path.replace(dirpath,'')

for filename in filenames:

zip.write(os.path.join(path,filename)

,os.path.join(name+fpath,filename)

)zip

.close(

)

壓縮整個資料夾:

zipfile模組對「資料夾」的壓縮其實是由壓縮檔案的目錄結構實現的,因此可以使用os模組的walk方法進行檔案遍歷、寫入壓縮檔案。

import zipfile,os

with zipfile.zipfile(

'aa.zip'

,'w'

)as target:

for i in os.walk(

'aa'):

for n in i[2]

: target.write(

''.join(

(i[0],

'\\'

,n))

)

python zipfile壓縮檔案

import zipfile,os def compress get files path,set files path 壓縮檔案生成.zip 格式檔案 param get files path 需要壓縮的資料夾 param set files path 存放壓縮檔案的位址 return f zip...

Python zipfile解壓中文問題

windows中使用python2.7遍歷zip檔案之後輸出檔名等資訊,console列印的中文及一些標點出現亂碼。查了一下網上說的windows的編碼為cp936,print 函式交給系統處理列印,所以要提前編碼成windows能夠識別的編碼。這種print的亂碼也會出現在形如print myli...

python zipfile修改docx並儲存

docx是microsoft office2007之後版本使用的,用新的基於xml的壓縮檔案格式取代了其目前專有的預設檔案格式,在傳統的檔名擴充套件名後面新增了字母 x 從上述可以知道,只需修改相對應的xml,就可以修改整個docx檔案。將docx用壓縮軟體開啟,可以看到下圖 document.xm...