我有一本具有3级层次结构的字典。例如:
d = { 'week': {'year': {'zone': 'val'}}}
其中区域,星期和年份分别是嵌套字典中的键。
我将其重组为:
d_new = {'zone': {'week': {'year': 'val'}}}
任何帮助都会有所帮助。
答案 0 :(得分:1)
def reshape(d):
new_d = {}
for z, w, y, v in [(z, w, y, d[w][y][z]) for w in d.keys() for y in d[w].keys() for z in d[w][y].keys()]:
if z not in new_d.keys(): new_d[z] = {}
if w not in new_d[z].keys(): new_d[z][w] = {}
new_d[z][w][y] = v
return new_d
d = {"w": {"y": {"z": "val"}}}
new_d = reshape(d)
print(d) # {'z': {'w': {'y': 'val'}}}