1

当我从多个数据库表中获取数据时,我发现自己在重复这种模式:

records = {'p_key': { "record": r, "A": list(), "B": list(), "C" : list() } for r in db_records}

我经常不得不以这种方式对数据进行分组,因为我无法跨数据库进行连接,或者可能存在多个查询比多个连接更快的情况。

但在性能方面,我不确定这样嵌套字典是否有很多开销,以及是否可以通过创建具有这些属性的对象来更好地为我提供服务,该对象将成为记录字典中的值。我所说的性能是指使用大量嵌套字典与对象字典时的空间和时间总成本。

4

1 回答 1

2

字典和常规类对象之间的性能基本上没有区别,因为内部对象正在使用字典来处理它们的属性。

但是,您应该考虑使用带有__slots__. 是有关它是什么及其性能的详细说明。

另一种选择是使用 pandas 库来处理大数据集。

于 2019-11-04T19:46:10.630 回答