首页 > 其他 > 详细

序列化模块

时间:2018-11-13 22:57:11      阅读:156      评论:0      收藏:0      [点我收藏+]

什么叫序列化——将原本的字典、列表等内容转换成一个字符串的过程就叫做序列化

技术分享图片 为什么要有序列化模块

序列化的目的

1、以某种存储形式使自定义对象持久化
2、将对象从一个地方传递到另一个地方。
3、使程序更具维护性。
技术分享图片

 

json

Json模块提供了四个功能:dumps、dump、loads、load

技术分享图片 loads和dumps
技术分享图片 load和dump
技术分享图片 ensure_ascii关键字参数
技术分享图片 其他参数说明
技术分享图片 json的格式化输出

pickle

 

json & pickle 模块

 

用于序列化的两个模块

 

  • json,用于字符串 和 python数据类型间进行转换
  • pickle,用于python特有的类型 和 python的数据类型间进行转换

 

pickle模块提供了四个功能:dumps、dump(序列化,存)、loads(反序列化,读)、load  (不仅可以序列化字典,列表...可以把python中任意的数据类型序列化

 

技术分享图片 pickle

 

这时候机智的你又要说了,既然pickle如此强大,为什么还要学json呢?
这里我们要说明一下,json是一种所有的语言都可以识别的数据结构。
如果我们将一个字典或者序列化成了一个json存在文件里,那么java代码或者js代码也可以拿来用。
但是如果我们用pickle进行序列化,其他语言就不能读懂这是什么了~
所以,如果你序列化的内容是列表或者字典,我们非常推荐你使用json模块
但如果出于某种原因你不得不序列化其他的数据类型,而未来你还会用python对这个数据进行反序列化的话,那么就可以使用pickle

序列化模块

原文:https://www.cnblogs.com/contiune/p/9955353.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!