Python pickle模塊實現(xiàn)對象序列化
這篇文章主要介紹了Python pickle模塊實現(xiàn)對象序列化,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
作用
對Python對象進(jìn)行序列化,便于存儲和傳輸
Python對象序列化成bytes類型
pickle.dumps(obj) 將Python對象轉(zhuǎn)化為bytes類型
pickle.loads(str) 將轉(zhuǎn)化成的bytes類型數(shù)據(jù)還原成對象
Python 3.7.0 (v3.7.0:1bf9cc5093, Jun 27 2018, 04:59:51) [MSC v.1914 64 bit (AMD64)] on win32
Type "copyright", "credits" or "license()" for more information.
>>> import pickle
>>> mydict = {'id':123, 'name':'abc'}
>>> pickle_str = pickle.dumps(mydict)
>>> pickle_str
b'\x80\x03}q\x00(X\x02\x00\x00\x00idq\x01K{X\x04\x00\x00\x00nameq\x02X\x03\x00\x00\x00abcq\x03u.'
>>> newdict = pickle.loads(pickle_str)
>>> newdict
{'id': 123, 'name': 'abc'}
Python對象序列化寫入文件
pickle.dump(obj, file)
可以存儲多個對象,讀取時按存儲順序讀取
>>> import pickle
>>> mydict = {'id':123, 'name':'abc'}
>>> file = open('pickle.txt','wb')
>>> pickle.dump(mydict, file)
>>> file.close()
從文件反序列化讀取Python對象
pickle.load(obj, file)
>>> import pickle
>>> file = open('pickle.txt','rb')
>>> newdict = pickle.load(file)
>>> file.close()
>>> newdict
{'id': 123, 'name': 'abc'}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
pandas中Series運算匯總(算術(shù)、比較和邏輯運算)
本文主要介紹了pandas中Series運算匯總,包括算術(shù)運算、比較運算和邏輯運算等,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2024-06-06
Python flashtext文本搜索和替換操作庫功能使用探索
本文將深入介紹Python flashtext庫,包括其基本用法、功能特性、示例代碼以及實際應(yīng)用場景,以幫助大家更好地利用這個有用的工具2024-01-01
關(guān)于Python函數(shù)的定義和參數(shù)
這篇文章主要介紹了關(guān)于Python函數(shù)的定義和參數(shù),Python中的函數(shù)我們可以理解成是一種具有功能的包裝塊,也就是封裝具有某一種功能的代碼塊,需要的朋友可以參考下2023-04-04

