1. 程式人生 > 實用技巧 >pickle 模組的 dump() 和 load() 方法詳解

pickle 模組的 dump() 和 load() 方法詳解

1. 概述

Python中的 pickle 模組實現了基本的資料序列與反序列化。序列化物件可以在磁碟上儲存物件,並在需要的時候讀取出來。任何物件都可以執行序列化操作。

2. dump()方法
  • 用法

pickle.dump(obj, file, protocol)

註釋:
obj——序列化物件,將物件obj儲存到檔案file中去;
file——file表示儲存到的類檔案物件,file必須有write()介面,file可以是一個以’w’開啟的檔案或者是一個StringIO物件,也可以是任何可以實現write()介面的物件;
protocol——序列化模式,預設是 0(ASCII協議,表示以文字的形式進行序列化),protocol的值還可以是1和2(1和2表示以二進位制的形式進行序列化。其中,1是老式的二進位制協議;2是新二進位制協議)。

如:

import pickle

fw = open("pickleFileName.txt", "wb")
pickle.dump("try", fw)  
3. load()方法
  • 用法

pickle.load(file)
註釋:
反序列化物件,將檔案中的資料解析為一個python物件。
file中有read()介面和 readline() 介面

如:

import pickle

fr = open("pickleFileName.txt", "rb")
result = pickle.load(fr)
print(result)  # 結果: try