Python序列化與反序列化pickle用法實例
這篇文章主要介紹了Python序列化與反序列化pickle用法實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
要將Python對象作為一個文件的形式保存到磁盤,就叫序列化;
當(dāng)我們需要用到這個這對象,再從磁盤加載這個對象,就叫反序列化
Python自帶的pickle可以幫我們實現(xiàn),pickle這個單詞是咸菜的意思,咸菜耐儲存,是不是很形象呀?
對象的存儲分為兩步:
1.將對象在內(nèi)存中的數(shù)據(jù)抓取取來,轉(zhuǎn)換成一個有序的文本,這一步就是序列化
2.再將文本存儲到磁盤中
代碼如下
import pickle class Bird(object): have_feather = True reproduction_method = "egg"# # 創(chuàng)建一個對象 summer = Bird() pickle_string = pickle.dumps(summer)# 已被序列化成二進(jìn)制數(shù)據(jù) with open("summer.pkl", "wb") as fp: fp.write(pickle_string) # dump方法可以把上面兩步作為一步來完成:# with open( "summer.pkl", "wb") as fp: #pickle.dump( summer, fp) # 從磁盤文件上恢復(fù)對象: 先讀取文件, 再loads with open("summer.pkl", "rb") as fp: summer = fp.read()# 先讀取 summer = pickle.loads(summer)# 再序列化 print(summer.have_feather)# 或者用load方法, 一步到位# with open( "summer.pkl", "rb") as fp: #summer = pickle.load(fp)# print(summer.have_feather)
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- 一文詳解python pickle中的反序列化漏洞
- Python?pickle?二進(jìn)制序列化和反序列化及數(shù)據(jù)持久化詳解
- Python Json與pickle模塊序列化使用介紹
- Python序列化模塊JSON與Pickle
- Python序列化模塊之pickle與json詳解
- Python數(shù)據(jù)序列化之pickle模塊
- Python使用pickle進(jìn)行序列化和反序列化的示例代碼
- Python序列化pickle模塊使用詳解
- Python之?dāng)?shù)據(jù)序列化(json、pickle、shelve)詳解
- Python pickle模塊進(jìn)行序列化的實現(xiàn)示例
相關(guān)文章
基于python實現(xiàn)數(shù)組格式參數(shù)加密計算
這篇文章主要介紹了基于python實現(xiàn)數(shù)組格式參數(shù)加密計算,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下2020-04-04python 實現(xiàn)自動遠(yuǎn)程登陸scp文件實例代碼
這篇文章主要介紹了python 實現(xiàn)自動遠(yuǎn)程登陸scp文件實例代碼的相關(guān)資料,需要的朋友可以參考下2017-03-03Python基于win32ui模塊創(chuàng)建彈出式菜單示例
這篇文章主要介紹了Python基于win32ui模塊創(chuàng)建彈出式菜單,結(jié)合實例形式分析了Python使用win32ui模塊創(chuàng)建彈出式菜單的具體步驟與相關(guān)操作技巧,并附帶說明了win32ui模塊的安裝命令,需要的朋友可以參考下2018-05-05利用Python實現(xiàn)網(wǎng)絡(luò)測試的腳本分享
這篇文章主要給大家介紹了關(guān)于利用Python實現(xiàn)網(wǎng)絡(luò)測試的方法,文中給出了詳細(xì)的示例代碼供大家參考學(xué)習(xí),對大家具有一定的參考學(xué)習(xí)價值,需要的朋友們下面來一起看看吧。2017-05-05