input = { "a" : { "x": 1, "y": 2 },
"b" : { "x": 3, "z": 4 } }
output = {'y': {'a': 2},
'x': {'a': 1, 'b': 3},
'z': {'b': 4} }
我需要根据输入制作一个新字典,它应该作为输出出现。到目前为止,我已经写过:
def pivot_nested_dict(nested_dict):
5 stateDict={}
6 for i in nested_dict:
7 dict2=nested_dict[i]
8 for j in dict2:
9 stateDict[j]= {i: dict2[j]}
10 return stateDict
11
12 print pivot_nested_dict(input)
我几乎有了答案,output={'y': {'a': 2}, 'x': {'b': 3}, 'z': {'b': 4}}。所以,x 键覆盖了 'a': 1. 我如何同时保留 a 和 b?