如何壓縮 Python 物件,以便在將其儲存到快取之前?


有時在將 Python 物件(列表、字典、字串等)儲存到快取前,我們需要對其進行壓縮,並在從快取中讀取後進行解壓縮。

首先,我們需要確定是否需要壓縮這些物件。我們應該檢查資料結構/物件是否太大,無法以未壓縮的形式放入快取。壓縮/解壓縮本身會產生一些開銷,我們必須權衡其與快取本身帶來的好處。

如果我們確實需要壓縮,那麼我們可能會使用 zlib。

如果我們準備使用 zlib,我們可能會想要嘗試在 compress 方法中提供的不同壓縮級別,以平衡 CPU 時間和壓縮級別

zlib.compress(string[, level])

壓縮 string 中的資料,返回一個包含已壓縮資料的字串。level 是控制壓縮級別的 1 到 9 之間的整數;1 表示最快,產生的壓縮比最低,9 表示最慢,產生的壓縮比最高。預設值為 6。如果出現任何錯誤,會引發 error 異常。

更新於: 2019 年 7 月 30 日

299 次瀏覽

開啟你的 職業 生涯

完成課程即可獲得認證

開始
廣告