本文实例讲述了Python使用Pickle库实现读写序列操作。分享给大家供大家参考,具体如下:
简介
pickle模块实现了用于对Python对象结构进行序列化和反序列化的二进制协议。“Pickling"是将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程序设计有所帮助。
新闻热点
疑难解答