pickle序列化

import pickle

1、定义一个Person类

class Person:
def init(self,n,a):
self.name=n
self.age=a
def show(self):
print(self.name+”_”+str(self.age))

2、定义一个dataList

dataList = [[1, 1, ‘yes’],
[1, 1, ‘yes’],
[1, 0, ‘no’],
[0, 1, ‘no’],
[0, 1, ‘no’]]

3、定义一个字典

dataDic = { 0: [1, 2, 3, 4],
1: (‘a’, ‘b’),
2: {‘c’:’yes’,’d’:’no’}}

4、定义一个Person并赋值

aa = Person(“JGood”, 2)
aa.show()

5、使用dump()将数据序列化到文件中

f=open(‘d:\p.txt’,’wb’)
pickle.dump(aa,f,0)
pickle.dump(dataList,f,0)
pickle.dump(dataDic,f,0)
f.close()

6、打开文件,输出文件第1次装入的内容

del Person

f=open(‘d:\p.txt’,’rb’)
bb1=pickle.load(f)
print(“序列化后的值1为:”,bb1)

7、打开文件,输出文件第2次装入的内容

bb2=pickle.load(f)
print(“序列化后的值2为:”,bb2)

8、打开文件,输出文件第3次装入的内容

bb3=pickle.load(f)
print(“序列化后的值3为:”,bb3)
f.close()

9、将dataList对象序列化为string形式,并读出

p1=pickle.dumps(dataList)
print(“pickle.loads(p1):”,pickle.loads(p1))

10、将dataDic对象序列化为string形式,并读出

p2=pickle.dumps(dataDic)
print(“pickle.loads(p2):”,pickle.loads(p2))

猜你喜欢

转载自blog.csdn.net/junchengberry/article/details/80295174