gpt4 book ai didi

python:将两个嵌套字典与字典组合作为顶级键的值

转载 作者:太空宇宙 更新时间:2023-11-03 13:16:49 26 4
gpt4 key购买 nike

我想合并两个嵌套的字典

d1 = {"admin": {"key1": "v2"}}
d2 = {"admin": {"key2": "v3"},
"user": {"something": "else"}}

这应该合并为:

d = {"admin": {"key1": "v2",
"key2": "v3"},
"user": {"something": "else"}}

除了遍历第一个键之外,还有其他简单的方法吗?

最佳答案

您可以使用defaultdict 将第一层的每个值作为dict。在您可以使用字典中的 update() 之后。

>>> from collections import defaultdict
>>> d = defaultdict(dict)
>>> d1 = {"admin": {"key1": "v2"}}
>>> d2 = {"admin": {"key2": "v3"},
... "user": {"something": "else"}}
>>> for dd in [d1,d2]:
... for k,v in dd.items():
... d[k].update(v)
...
>>> d
defaultdict(<type 'dict'>, {'admin': {'key2': 'v3', 'key1': 'v2'}, 'user': {'something': 'else'}})

或者以更紧凑的形式,您可以使用 map()...我真的不喜欢它,但这是一个机会

>>> for dd in [d1,d2]:
... map(lambda x:d[x[0]].update(x[1]),dd.items())

关于python:将两个嵌套字典与字典组合作为顶级键的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27382637/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com