python序列化

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python序列化相关的知识,希望对你有一定的参考价值。

Python中用于序列化的两个模块

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

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

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

json是通用的,pickle只支持python。pickle是将对象序列化成字节的形式,json是序列化成字符串。二者的使用方法是相近的。json更加适合跨语言,只能对基本数据类型做操作,而对于pickle支持python所有数据类型,但不是通用的,只限于python,也有可能会出现python2的pickle不适用于python3。

 

用dumps将基本数据类型转变为字符串形式:
import
json info = {name:cab,age:20} res = json.dumps(info) print(res,type(res))
用loads将字符串转化为基本数据类型:
import
json info = {"name":"cab"}‘  #备注:用loads的时候,字典式的字符串外面需要用单引号,双引号会出错。 res = json.loads(info) print(res,type(res))

 

用lump方法,是先将对象进行序列化,然后写在文件里
li = [1,2,3] json.dump(li,open(db,w))

 

用load方法,是先打开文件,将文件读取到内存,然后将文件进行反序列化
li = json.load(open(db,r)) print(li,type(li))

 





以上是关于python序列化的主要内容,如果未能解决你的问题,请参考以下文章

python 有用的Python代码片段

Python 向 Postman 请求代码片段

python [代码片段]一些有趣的代码#sort

使用 Python 代码片段编写 LaTeX 文档

python 机器学习有用的代码片段

python 代码片段和解决方案