我正在寻找一个库,它可以让我在 python“对象数据库”上运行类似 SQL 的查询。对于对象数据库,我指的是内存中 Python 对象和列表的相当复杂的结构。基本上,这将是一个“反向 ORM”——它不是为关系数据库提供面向对象的接口,而是为对象数据库提供一个类似于 SQL 的接口。
C# 的 LINQ 非常接近。Python 的列表解析非常好,但是在处理复杂的事情(排序、连接等)时语法会变得很复杂。此外,我不能(轻松)使用列表推导动态创建查询。
实际的语法可以是基于字符串的,也可以使用面向对象的 DSL(a la from(mylist).select(...))。如果图书馆会提供某种索引来加快搜索速度,则可以加分。
这存在还是我必须发明它?