首页 > Python > Python 最佳实践指南 2018 > Python 应用场景

6.13. 数据序列化

file

什么是数据序列化(Data Serialization)?

数据序列化(Data Serialization)用于将结构化数据转换为允许被分享或存储的格式,并且通过这种方式,数据的原始结构可以被恢复。在某些情况下,数据序列化的另一个次要目的是将序列化数据的尺寸最小化,从而最小化其对硬盘空间或带宽的要求。

Pickle

Python 原生的数据序列化模块叫做 Pickle

这里举个例子:

import pickle

# 这是一个字典示例
grades = { 'Alice': 89, 'Bob': 72, 'Charles': 87 }

# 使用 dumps 方法将该对象转换为一个序列化的字符串
serial_grades = pickle.dumps( grades )

# 使用 loads 方法来对一个对象进行反序列化
received_grades = pickle.loads( serial_grades )

Protobuf

如果你需要一个支持多种语言的序列化模块,那么 Google 的 Protobuf 库是一个选择。