【发布时间】:2020-09-10 12:35:43
【问题描述】:
我的字典中目前有超过 10k 的元素,如下所示:
cars = [{'model': 'Ford', 'year': 2010},
{'model': 'BMW', 'year': 2019},
...]
我还有第二本词典:
car_owners = [{'model': 'BMW', 'name': 'Sam', 'age': 34},
{'model': 'BMW', 'name': 'Taylor', 'age': 34},
.....]
但是,我想将两者结合在一起,就像:
combined = [{'model': 'BMW',
'year': 2019,
'owners: [{'name': 'Sam', 'age': 34}, ...]
}]
将它们结合起来的最佳方法是什么?目前我正在使用 For 循环,但我觉得有更有效的方法来处理这个问题。
** 这只是一个虚假的数据示例,我拥有的数据要复杂得多,但这有助于了解我想要实现的目标
【问题讨论】:
-
我认为问题是双重的。 stackoverflow.com/questions/53601657/…
-
这些不是字典,而是(字典的)列表。如果至少有一个是真正的 dict,那么合并会更快,因为您不必“搜索”匹配模型。
-
福特去哪儿了?
-
对于这么多的数据,您需要开始考虑使用 SQLite(或其他数据库)之类的东西。您不会有许多
dict对象的内存开销,并且可以使用SQL 生成所需的组合。
标签: python dictionary