Python: 如何用pickle模組將 Python 物件序列化和反序列化? pickle.dumps(data) ; pickle.loads(binary_data)

加入好友
加入社群
Python: 如何用pickle模組將 Python 物件序列化和反序列化? pickle.dumps(data) ; pickle.loads(binary_data) - 儲蓄保險王

pickle 是 Python 的一個標準模組,

主要是用於將 Python 物件序列化和反序列化。

它可以把 Python 物件轉換成二進制格式的字串,

也可以把二進制格式的字串轉換回 Python 物件。

pickle 可以儲存大部分 Python 物件,

包括自定義類別的物件。

pickle 可以用於在 Python 程式中儲存和載入數據,

方便數據的存儲和分享。常見的應用場景包括:

  • 儲存和載入模型參數
  • 儲存和載入爬蟲數據
  • 儲存和載入機器學習數據集儲存和載入程式狀態等等

以下是 pickle 序列化和反序列化的示例:

import pickle

# 定義一個字典
data = {'name': 'Alice', 'age': 18}

# 將字典序列化成二進制字串
binary_data = pickle.dumps(data)

#可用wb模式寫入磁碟機中

# 輸出二進制字串
print(binary_data)

# 將二進制字串反序列化成 Python 物件
new_data = pickle.loads(binary_data)

# 輸出反序列化後的 Python 物件
print(new_data)

Python: 如何用pickle模組將 Python 物件序列化和反序列化? pickle.dumps(data) ; pickle.loads(binary_data) - 儲蓄保險王

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

pickle 和 struct.pack() 以及

struct.unpack() 有些相似之處,

它們都是用來在 Python 中進行

序列化和反序列化的工具。

但是它們的用途不完全相同。

struct.pack() 和 struct.unpack()

主要用於二進制數據的打包和解析,

例如將整數或浮點數打包成二進制數據,

或者將二進制數據解析為整數或浮點數。

pickle 則是用於 Python 對象的序列化和反序列化。

它可以將 Python 對象轉換成二進制數據流,

並且可以在需要時還原回原始的 Python 對象。

struct.pack()struct.unpack() 不同,

pickle 可以處理各種不同的 Python 對象,

包括自定義類型的對象,

而不僅僅是內置的基本數據類型。

推薦hahow線上學習python: https://igrape.net/30afN

加入好友
加入社群
Python: 如何用pickle模組將 Python 物件序列化和反序列化? pickle.dumps(data) ; pickle.loads(binary_data) - 儲蓄保險王

儲蓄保險王

儲蓄險是板主最喜愛的儲蓄工具,最喜愛的投資理財工具則是ETF,最喜愛的省錢工具則是信用卡

You may also like...

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *