Python学习日记(十八) 序列化模块
程序员文章站
2022-08-03 20:47:35
什么是序列? 就是每一个元素被有序的排成一列 什么是序列化? 就是将原本的列表、字典等内容转化成字符串的过程 什么时候会用到序列化? 数据存储(把数据放在文件、数据库),网络传输等 序列化的目的 1.以某种存储形式使自定义对象持久化 2.将对象从一个地方传递到另一个地方 3.使程序更具维护性 序列化 ......
什么是序列?
就是每一个元素被有序的排成一列
什么是序列化?
就是将原本的列表、字典等内容转化成字符串的过程
什么时候会用到序列化?
数据存储(把数据放在文件、数据库),网络传输等
序列化的目的
1.以某种存储形式使自定义对象持久化
2.将对象从一个地方传递到另一个地方
3.使程序更具维护性
序列化:数据结构转换成字符串
反序列化:字符串转换成数据结构
三大序列化模块:
1.json
特点:
json是一个通用的序列化格式且只有很少一部分数据(str、list、dict、tuple、数字)类型能够通过json转化成字符串
2.pickle
特点:
pickle可以将所有的python中的数据类型转成字符串形式,pickle序列化的内容只有python才能够理解,且部分序列化依赖python代码
3.shelve
特点:
shelve可以序列化句柄,可以使用句柄直接操作非常方便