Python pickle模块实现对象序列化
这篇文章主要介绍了Pythonpickle模块实现对象序列化,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
作用
对Python对象进行序列化,便于存储和传输
Python对象序列化成bytes类型
pickle.dumps(obj)将Python对象转化为bytes类型
pickle.loads(str)将转化成的bytes类型数据还原成对象
Python3.7.0(v3.7.0:1bf9cc5093,Jun272018,04:59:51)[MSCv.191464bit(AMD64)]onwin32
Type"copyright","credits"or"license()"formoreinformation.
>>>importpickle
>>>mydict={'id':123,'name':'abc'}
>>>pickle_str=pickle.dumps(mydict)
>>>pickle_str
b'\x80\x03}q\x00(X\x02\x00\x00\x00idq\x01K{X\x04\x00\x00\x00nameq\x02X\x03\x00\x00\x00abcq\x03u.'
>>>newdict=pickle.loads(pickle_str)
>>>newdict
{'id':123,'name':'abc'}
Python对象序列化写入文件
pickle.dump(obj,file)
可以存储多个对象,读取时按存储顺序读取
>>>importpickle
>>>mydict={'id':123,'name':'abc'}
>>>file=open('pickle.txt','wb')
>>>pickle.dump(mydict,file)
>>>file.close()
从文件反序列化读取Python对象
pickle.load(obj,file)
>>>importpickle
>>>file=open('pickle.txt','rb')
>>>newdict=pickle.load(file)
>>>file.close()
>>>newdict
{'id':123,'name':'abc'}
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。