首页 > 代码库 > python,序列化

python,序列化

序列化:

变量从内存中变成可存储或传输的过程

在Python中叫pickling,在其他语言中也被称之为serialization,marshalling,flattening等等

反序列化(unpickling):

变量内容从序列化的对象重新读到内存里

import pickle
d = dict(name=Bob, age=20, score=88)
pickle.dumps(d)
#结果
b\x80\x03}q\x00(X\x03\x00\x00\x00ageq\x01K\x14X\x05\x00\x00\x00scoreq\x02KXX\x04\x00\x00\x00nameq\x03X\x03\x00\x00\x00Bobq\x04u.

‘‘‘pickle.dumps()方法把任意对象序列化成一个bytes,然后,就可以把这个bytes写入文件。
或者用另一个方法pickle.dump()直接把对象序列化后写入一个file-like Object‘‘‘
f = open(dump.txt, wb)
pickle.dump(d, f)
f.close()

#反序列化,pickle.loads()/load()
 f = open(dump.txt, rb)
d = pickle.load(f)
f.close()
d
{age: 20, score: 88, name: Bob}

 

python,序列化