Python pickle模块使用

简介

python的pickle模块实现了基本的数据序列和反序列化(可以使用的有:列表,字典,集合,类等)。通过pickle模块的序列化操作我们能够将程序中运行的对象信息保存到文件中去,永久存储。通过pickle模块的反序列化操作,我们能够从文件中创建上一次程序保存的对象。

使用案例

pickle.dump(obj, file[, protocol])

obj为序列化对象,并将结果数据流写入到文件对象中。参数protocol是序列化模式,默认值为0,表示以文本的形式序列化。protocol的值还可以是1或2,表示以二进制的形式序列化。

pickle.load(file)

反序列化对象。将文件中的数据解析为一个Python对象。其中要注意的是,在load(file)的时候,要让python能够找到类的定义,否则会报错:

基本使用

import pickle
#创建一个类
class Person:
    def __init__(self,n,a):
        self.name=n
        self.age=a
    def show(self):
        print(self.name+"_"+str(self.age))
aa = Person("JGood", 2)
aa.show()
output=open('data.pkl','wb')
pickle.dump(aa,output)
output.close()
print("*"*50)
# Person
pickle_use=open('data.pkl','rb')
bb=pickle.load(pickle_use)
pickle_use.close()
bb.show()

程序运行结果:

JGood_2
**************************************************
JGood_2
[Finished in 0.2s]里写代码片

更多请参考:https://blog.csdn.net/sinat_29552923/article/details/70833455

猜你喜欢

转载自blog.csdn.net/meiqi0538/article/details/80964312