Python 基础(十七)--序列化
pickle模快
pickle.dumps():可将特有数据类型的转换为bytes类型
pickle.loads():将bytes类型转化回来
>>> import pickle >>> a = {'name':'xing','weight':'110'} >>> a_dump = pickle.dumps(a) >>> print(a_dump) # a_dump可写入文件 b'\x80\x03}q\x00(X\x04\x00\x00\x00nameq\x01X\x04\x00\x00\x00xingq\x02X\x06\x00\x00\x00weightq\x03X\x03\x00\x00\x00110q\x04u.' >>> c= pickle.loads(a_dump) >>> print(c) {'name': 'xing', 'weight': '110'}
pickle.dump(data,file):直接将data序列化写入file
pickel.load(file):将文件反序列化,先进先出
json模块
json.dump(data,f):序列化写入file但是dump生成的是str类型而不是bytes类型
josn.load(file):只能load一次
json.dumps()
json.loads()
区别
pickle:只支持Python
支持Python中所有数据类型
json:支持所有语言
只支持Python中常规数据类型