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()
多思考也是一種努力,做出正确的分析和選擇,因為我們的時間和精力都有限,是以把時間花在更有價值的地方。