有哪些可用的Python模块用于保存和加载数据?
关于用于保存和加载数据的Python模块,StackOverflow上有许多分散的帖子 我自己也很熟悉,也听说过。可能还有更多。此外,每个模块似乎都适合某个特定的用途,并有其自身的限制(例如,加载一个带有pickle的大型列表或词典需要花费很长时间(如果可以的话)。因此,对各种可能性有一个恰当的概述将是一件好事 然后,您是否可以帮助提供用于保存和加载数据的模块的全面列表,并为每个模块描述:有哪些可用的Python模块用于保存和加载数据?,python,data-storage,python-module,data-persistence,Python,Data Storage,Python Module,Data Persistence,关于用于保存和加载数据的Python模块,StackOverflow上有许多分散的帖子 我自己也很熟悉,也听说过。可能还有更多。此外,每个模块似乎都适合某个特定的用途,并有其自身的限制(例如,加载一个带有pickle的大型列表或词典需要花费很长时间(如果可以的话)。因此,对各种可能性有一个恰当的概述将是一件好事 然后,您是否可以帮助提供用于保存和加载数据的模块的全面列表,并为每个模块描述: 模块的一般用途是什么 它的极限, 为什么您会选择此模块而不是其他模块 : 优点: 可以以二进制格式读
- 模块的一般用途是什么
- 它的极限,
- 为什么您会选择此模块而不是其他模块
- 优点:
- 可以以二进制格式读取和写入Python值。因此,它比pickle(基于字符)快得多
- 缺点:
- 并非所有Python对象类型都受支持。某些不受支持的类型(如内置的子类)将显示为正确封送和解封送
- 不打算对错误或恶意构造的数据进行保护
- Python维护人员保留在需要时以向后不兼容的方式修改封送处理格式的权利
- 优点:
- 工具架中的值本质上可以是任意Python对象
- 缺点:
- 不支持对搁置对象的并发读/写访问
- 赞成者:
- 透明持久性
- 完全事务支持
- 可插拔存储器
- 可扩展体系结构
- 缺点
- 不是标准库的一部分李>
- 除非用于持久化的原始python对象模型可用,否则无法(轻松)重新加载数据(考虑版本困难和数据可移植性)
- :
(由@Duncan建议)