Python中的Pickle模块实现了基本的数据序列与反序列化。
1. 概述
Python中的 pickle 模块实现了基本的数据序列与反序列化。
序列化对象可以在磁盘上保存对象,并在需要的时候读取出来。
任何对象都可以执行序列化操作。
dump()方法:
pickle.dump(obj, file, [,protocol])
obj——序列化对象,将对象obj保存到文件file中去;
file——file表示保存到的类文件对象,file必须有write()接口,file可以是一个以’w’打开的文件或者是一个StringIO对象,也可以是任何可以实现write()接口的对象;
protocol——序列化模式,默认是 0(ASCII协议,表示以文本的形式进行序列化),protocol的值还可以是1和2(1和2表示以二进制的形式进行序列化。其中,1是老式的二进制协议;2是新二进制协议)。
示例:
import pickle
fw = open("pickleFileName.txt", "wb")
pickle.dump("try", fw)
load()方法:
pickle.load(file)
注释:反序列化对象,将文件中的数据解析为一个python对象。file中有read()接口和readline()接口。
示例:
import pickle
fr = open("pickleFileName.txt", "rb")
result = pickle.load(fr)
print(result) # 结果: try