如何按键合并字典列表?



如何翻转以下列表:

[{'xx1': {'test1': 8}}, {'xx1': {'test3': 2}}, {'yy2': {'test1': 5}}, {'yy2': {'test5': 6}}]

[{'xx1' : {'test1': 8, 'test3':2}, 'yy2' : {'test1': 5, 'test5': 6}}]

完成此任务的语法最干净的方法是什么?或者,如何通过使用reduce()来实现?

谢谢你的帮助!

类似下面的内容

from collections import defaultdict
data = defaultdict(dict)
lst = [{'xx1': {'test1': 8}}, {'xx1': {'test3': 2}}, {'yy2': {'test1': 5}}, {'yy2': {'test5': 6}}]
for entry in lst:
for k, v in entry.items():
kk, vv = next(iter(v.items()))
data[k][kk] = vv
print(data)

输出
defaultdict(<class 'dict'>, {'xx1': {'test1': 8, 'test3': 2}, 'yy2': {'test1': 5, 'test5': 6}})

相关内容

  • 没有找到相关文章

最新更新