序列化是什么?
序列化指的是将内存中的数据结构转化为一种中间格式 并存储到硬盘上。
反序列化是什么?
将硬盘上存储的中间格式数据再还原为内存中的数据结构。
为什么要有序列化?
是为了将数据持久存储
较文件完成数据持久化存储 方便简单的多
序列化的四个函数:
| 序列化 | 反序列化 | 属性 |
| dump | load | 自动封装 write 和 read |
| dumps | loads | 不封装 |
序列化转字符串:
dic = {'age': 23, 'job': 'student'}
dic_str = json.dumps(dic)
print(type(dic_str), dic_str)
# out: <class 'str'> {"age": 23, "job": "student"}
dic_obj = json.loads(dic_str)
print(type(dic_obj), dic_obj)
# out: <class 'dict'> {'age': 23, 'job': 'student'}
可以看到,dumps函数将对象转换成了字符串。loads函数又将其恢复成字典。