Python标准库数据持久化
本章中描述的模块支持在磁盘上以持久形式存储 Python 数据。 pickle
和 marshal
模块可以将许多 Python 数据类型转换为字节流,然后从字节中重新创建对象。 各种与 DBM 相关的模块支持一系列基于散列的文件格式,这些格式存储字符串到其他字符串的映射。
本章中描述的模块列表是:
pickle
—— Python 对象序列化- 与其他 Python 模块间的关系
- 与
marshal
间的关系 - 与
json
模块的比较
- 与
- 数据流格式
- 模块接口
- 可以被打包/解包的对象
- 打包类实例
- 持久化外部对象
- Dispatch 表
- 处理有状态的对象
- 限制全局变量
- 性能
- 例子
- 与其他 Python 模块间的关系
copyreg
--- 注意pickle
支持函数- 示例
shelve
--- Python 对象持久化- 限制
- 示例
marshal
--- 内部 Python 对象序列化dbm
--- Unix "数据库" 接口dbm.gnu
--- GNU 对 dbm 的重解析dbm.ndbm
--- 基于 ndbm 的接口dbm.dumb
--- 便携式 DBM 实现
sqlite3
--- SQLite 数据库 DB-API 2.0 接口模块- 模块函数和常量
- 连接对象(Connection)
- Cursor 对象
- 行对象*Row*
- 异常
- SQLite 与 Python 类型
- 概述
- 使用适配器将额外的 Python 类型保存在 SQLite 数据库中。
- 让对象自行调整
- 注册可调用的适配器
- 将SQLite 值转换为自定义Python 类型
- 默认适配器和转换器
- 控制事务
- 有效使用
sqlite3
- 使用快捷方式
- 通过名称而不是索引访问索引
- 使用连接作为上下文管理器
- 常见问题
- 多线程