Python — lzma壓縮

一、異常

lzma這個包中只提供了一個異常:lzma.LZMAError。這個異常只有如下情況會拋出:

  • 壓縮或解壓時發生錯誤

  • 初始化壓縮器與解壓器的狀態時發生錯誤

二、讀寫壓縮文件

1、介面1

lzma中提供了一個借口,專門用來訪問壓縮文件:lzma.open(filename, mode="rb")

(1).filename參數,通常是一個字元串表示的文件路徑

(2).mode參數是文件模式,文件模式可以是:

  • 文本模式:`"rt", "wt", "xt", "at"

  • 二進模式:"r", "rb", "w", "wb", "x", "xb", "a" , "ab"

有不懂或者不會的朋友可以加群330637182諮詢學習哦

Advertisements

2、例子1

(1).創建壓縮文件

(2).讀取壓縮文件

除了直接讀取意外,我們還可以使用一個解壓縮軟體來解壓縮我們創建的文件

然後使用文本編輯器打開我們解壓的軟體,看看編碼是不是正確

3、介面2

lzma.compress(data)

該函數可以壓縮數據(位元組對象),反悔一個數據被壓縮的位元組二進位對象。

lzma.decompress(data)

解壓一個已經被壓縮過後的數據(位元組對象),反悔一個解壓的二進位數據對象。

注意: 如果數據是幾個獨立的壓縮流的連接,那麼將會一起解壓所有這些流,並且反悔結果的連接

4、例子2

(1).在內存中進行壓縮

可以看到,一個原來2554位元組的文件,被壓縮到只有768位元組

注意:只有文件有一定大小的時候才能體現出壓縮的優勢。如果對一個普通的字元串壓縮,可能反而變大

Advertisements

(2).解壓一個已經被壓縮的數據

如此,就完成了我們對數據的壓縮和解壓。

有不懂或者不會的朋友可以加群330637182諮詢學習哦,群里有免費python學習視頻還會有大牛指導!

Advertisements

你可能會喜歡