python序列化之pickle

python序列化之pickle,第1张

概述pickle是python独有的序列化与反序列化的第三方库,根据官方文档[1],在pickle之外,python同时还有marshal[2]可以支持更复杂的功能。但是在一般情况下,推荐先使用pickle来完成序列化和反序列化的任务pickle支持六种序列化协议,目前python3.8以后在用的是第5版本。序列化是一种比持久性

pickle是python独有的序列化与反序列化的第三方库,根据官方文档[1],在pickle之外,python同时还有marshal[2]可以支持更复杂的功能。但是在一般情况下,推荐先使用pickle来完成序列化和反序列化的任务

pickle支持六种序列化协议,目前python3.8以后在用的是第5版本。序列化是一种比持久性更原始的概念。 尽管pickle可以读写文件对象,但是它不能处理持久对象的命名问题,也不能解决并发访问持久对象的问题。 pickle模块可以将复杂的对象转换为字节流,并且可以将字节流转换为具有相同内部结构的对象。 也许与这些字节流有关的最好的做法是将它们写入文件,但也可以考虑通过网络发送它们或将它们存储在数据库中[3]。

 

pickle常用的四个方法:dump, dumps, load, loads,其中前两个是序列化,后两个是反序列化

dump和dumps的分别:dumps不将对象的层次结构也写入文件中

 

[1]https://docs.python.org/3/library/pickle.HTML

[2]https://docs.python.org/3/library/marshal.HTML#module-marshal

[3]https://docs.python.org/3/library/shelve.HTML#module-shelve

总结

以上是内存溢出为你收集整理的python序列化之pickle全部内容,希望文章能够帮你解决python序列化之pickle所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://www.54852.com/langs/1187498.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-03
下一篇2022-06-03

发表评论

登录后才能评论

评论列表(0条)

    保存