如何获取对象数据库?

2024-05-23 20:45:43 发布

您现在位置:Python中文网/ 问答频道 /正文

有谁能推荐一个模块或者告诉我如何获得Python的对象数据库? 我对数据库保存对象感兴趣的原因之一是,我认为数据库可以提供比使用pickle更简单的代码。 在我的问题Saving an Object (Data persistence)中,有人给了我一段使用pickle的代码,我认为应该有一种更简单的方法来保存对象。在


Tags: 模块对象方法代码an数据库dataobject
3条回答

这是一个非常模糊的领域,因为你没有告诉你的需求是什么。有不同的可能性取决于你到底想要什么。您可以在python index中搜索与数据库相关的产品。在

存储和检索python对象,无任何查询,内存中的所有内容

我将使用pickle或json将对象存储并加载到磁盘上的单个文件中。在

在关系数据库中存储和检索对象

python有很多可用的Object relational mappers

按需加载和存储对象

有一些python的“纯对象”数据库,比如zope或{a4}(不,我对它们都没有经验)。在

编辑

既然您澄清了您想要一个简单的解决方案,那么pickle就是要使用的工具。在

zoan是优秀的数据库对象。它需要一些工作来设置,但它是完全值得的。在

Pickle不是一个数据库,因此它们可以用来加载或保存数据,但不能将它们用作数据库,只能用作保存文件格式。在

Shelve是一个原始的密钥数据存储。一、 如果你的所有对象都有一个唯一的键,你可以使用它,否则就不能。在

如果您主要关心的是代码的简单性,pickle是很难击败的。在

基本上,要保存一个对象data,你所要做的就是:

with open('data.pickle', 'w') as pickle_file:
    pickle.dump(data, pickle_file)

然后,您可以通过以下方式取回:

^{pr2}$

如果您需要从您的自己的类中保存对象,您可能需要检查some technical details,但将对象保存到文件中基本上与上面的编写/读取代码一样简单!在

相关问题 更多 >