本文實例講述了Python使用Pickle庫實現讀寫序列操作。分享給大家供大家參考,具體如下:
簡介
pickle模塊實現了用于對Python對象結構進行序列化和反序列化的二進制協議?!癙ickling"是將Python對象轉換為字節流的過程,“unpickling"是反向操作,由此字節流二進制文件或字節對象)轉換回對象結構。
模塊方法
pickle.dump(obj, file, protocol=None, *, fix_imports=True)
將obj以二進制形式寫入file-object文件
pickle.dumps(obj, protocol=None, *, fix_imports=True)
將obj編譯為二進制對象
pickle.load(file, *, fix_imports=True, encoding="ASCII", errors="strict")
dump的反向操作
pickle.loads(bytes_object, *, fix_imports=True, encoding="ASCII", errors="strict")
dumps的反向操作
pickle
而以二進制讀取的一個妙用就是保存matplotlib的交互式圖片頁面:
保存交互式圖片頁面
import matplotlib.pyplot as pltimport pickle as pl#調用matplotlib的figure對象fig = plt.figure()x = [1,2,3,4,5]y = [1,2,3,4,5]plt.plot(x,y)#序列化figure對象,并保存pl.dump(fig,open('C:/Users/Administrator/Desktop/fig.pickle','wb'))
讀取交互式頁面:
import matplotlib.pyplot as pltimport pickle as pl# 載入序列化文件fig = pl.load(open('C:/Users/Administrator/Desktop/fig.pickle','rb'))plt.show()# 獲得圖片信息print(fig.axes[0].lines[0].get_data())
更多關于Python相關內容感興趣的讀者可查看本站專題:《Python函數使用技巧總結》、《Python面向對象程序設計入門與進階教程》、《Python數據結構與算法教程》、《Python字符串操作技巧匯總》、《Python入門與進階經典教程》及《Python文件與目錄操作技巧匯總》
希望本文所述對大家Python程序設計有所幫助。
新聞熱點
疑難解答