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)

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: list.index() 只能找到第一個元素的index,若元素有重複,如何找出所有index? indexes = [index for index, value in enumerate(my_list) if value == target] Python: list.index() 只能找到第一個元素的index,若元素有重複,如何找出所有index? indexes = [index for index, value in enumerate(my_list) if value == target]](https://i0.wp.com/savingking.com.tw/wp-content/uploads/2024/10/20241010101216_0_12b6c0.png?quality=90&zoom=2&ssl=1&resize=350%2C233)



]*>.*?底下插入一個圖檔.*?</w:p>’, flags = re.DOTALL) ; new_xml, n = pattern.subn(”, xml, count=1)' title='Python正則替換:全面掌握 re.sub 與 re.subn 的差異與實戰 #substitute(替換); . 預設匹配「除\n以外的任意單一字元」; pattern = re.compile(r'<w:p[^>]*>.*?底下插入一個圖檔.*?</w:p>’, flags = re.DOTALL) ; new_xml, n = pattern.subn(”, xml, count=1)' loading='lazy' width=350 height=233 />



近期留言