如果我有n个不同深度的嵌套字典,其中嵌套最深的字典的值作为一个列表
例如:
{"a":{"b": {"c": {"d": ["ab"]}}}},
{"a" : {"b": {"d": ["aa"]}}},
{"a": {"f":{"c":["xx"]}}},
{"a":{"b": {"c": {"d": ["ef"]}}}}
我怎样才能把这些结合起来
{"a": {"b": {"c": {"d": ["ab","ef"]}}, "d": ["aa"]}, "f":{"c":["xx"]}}}
这可以看作是一棵树,其中"a"
是整棵树的父树,"b"
,"f"
是子树,依此类推。你知道吗
我试过使用递归,但实际上我不知道从哪里开始
因为每个dict只包含一个键,所以实际上不需要递归。迭代地获取下一个内部dict,直到得到一个列表,此时可以使用列表扩展子列表,这样效率会更高:
o
变成:可以将递归与
itertools.groupby
一起使用:输出:
相关问题 更多 >
编程相关推荐