pickle提供了一個簡單的持久化功能。可以將對象以文件的形式存放在磁盤上。
pickle.dump(obj, file[, protocol])
序列化對象,並將結果數據流寫入到文件對象中。參數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() f=open('d:\\p.txt','w') pickle.dump(aa,f,0) f.close() #del Person f=open('d:\\p.txt','r') bb=pickle.load(f) f.close() bb.show()