我有两本字典。你知道吗
第一个是:
modifiers_list = {
'Body': {
'Height': {
'Tall': 1,
'Short': 2
}
},
'Neck': {
'Tall': 3,
'Short': 4
}
}
第二个是
modifiers_list_Female = {
'Body': {
'Height': {
'Extra Tall': 5,
'Extra Short': 6
}
},
'Neck': {
'Neck 1': 7,
'Neck 2': 8,
}
}
预期结果应为:
{
'Body': {
'Height': {
'Tall': 1,
'Short': 2,
'Height': {
'Extra Tall': 5,
'Extra Short': 6
}
},
'Neck': {
'Neck 1': 7,
'Neck 2': 8,
'Tall': 3,
'Short': 4
}
}
我试过z = {**x, **y}
然后
def merge_two_dicts(x, y):
z = x.copy() # start with x's keys and values
z.update(y) # modifies z with y's keys and values & returns None
return z
但我不能得到我需要的执行结果。你知道吗
可以使用递归:
输出:
如果要在结果中包含第二个字典中的键:
输出:
基于Ajax1234答案,我创建了一个函数,该函数将字典合并到两个数据同步端:
示例:
结果:
这个代码的在线演示:https://repl.it/@ArthurKhusnutdi/pythonmergedictionaries
相关问题 更多 >
编程相关推荐