python 中的pickle資料序列化模組

2021-08-08 06:07:01 字數 1051 閱讀 1212

python的pickle模組實現了基本的資料序列和反序列化。通過pickle模組的序列化操作我們能夠將程式中執行的物件資訊儲存到檔案中去,永久儲存;通過pickle模組的反序列化操作,我們能夠從檔案中建立上一次程式儲存的物件。

基本介面:

pickle.dump(obj, file, [,protocol])

註解:將物件obj儲存到檔案file中去。

protocol為序列化使用的協議版本,0:ascii協議,所序列化的物件使用可列印的ascii碼表示;1:老式的二進位制協議;2:2.3版本引入的新二進位制協議,較以前的更高效。其中協議0和1相容老版本的python。protocol預設值為0。

file:物件儲存到的類檔案物件。file必須有write()介面, file可以是乙個以』w』方式開啟的檔案或者乙個stringio物件或者其他任何實現write()介面的物件。如果protocol>=1,檔案物件需要是二進位制模式開啟的。

pickle.load(file)

註解:從file中讀取乙個字串,並將它重構為原來的python物件。

file:類檔案物件,有read()和readline()介面。

a ****** code

複製**

import pickle

data1 =

output = open(『data.pkl』, 『wb』)

pickle.dump(data1, output)

pickle.dump(selfref_list, output, -1)

output.close()

複製**

複製**

import pprint, pickle

pkl_file = open(『data.pkl』, 『rb』)

data1 = pickle.load(pkl_file)

pprint.pprint(data1)

data2 = pickle.load(pkl_file)

pprint.pprint(data2)

pkl_file.close()

複製**

python中的pickle模組

它可以序列化 物件並儲存到磁碟中,並在需要的時候讀取出來,任何物件都可以執行序列化操作。那麼什麼又是序列化呢?簡單來說,序列化就是用來處理物件流的機制。所謂物件流也就是將物件的內容進行流化,流的概念這裡不用多說 就是i o 我們可以對流化後的物件進行讀寫操作,也可將流化後的物件傳輸於網路之間 注 要...

Python中的pickle模組

鏈客,專為開發者而生,有問必答!pickle模組的作用 pickle模組用於將python物件序列化為位元組流,可儲存在檔案或資料庫中,也可同通過網路進行傳輸。使用反序列化 unpickle 可以將生成的位元組流轉換回python物件。pickling 是將python物件層次結構轉換為位元組流的過...

python中的pickle模組

pickle庫是實現基本的資料序列化和反序列化的模組。pickle可以儲存的型別資料 所有python支援的原生型別 布林值,整數,浮點數,複數,字串,位元組,none 由任何原生型別組成的列表,元組,字典和集合。函式,類,類的例項 pickle模組中的常用方法 pickle.dump obj,fi...