将一个嵌套字典的值更新为另一个具有字典列表的值
Updating values of one nested dictionary to another having list of dictionaries
假设我们有两个嵌套字典:
dict1={'s1':{'A':{'C':'3','D':'4'},'B':{'E':'5','F':'6'}}}
dict2 = {'s1':[{'C':'3a','D':'4a'},{'C':'3b','D':'4b'}], 'B': {'E':'5a','F':'6a'}}
我可以根据值为 dict2 的键替换 dict1 中的值
dict1['E']=dict2['E']
这将导致 ..
dict1={'s1':{'A':{'C':'3','D':'4'},'B':{'E':'5a','F':'6'}}}
现在 我想在 dict1 中查找 C 和 D,并替换为 dict2 中的 C 和 D 列表
输出应该是这样的:
dict1={'s1':{'A':[{'C':'3a','D':'4a'},{'C':'3b','D':'4b'}],'B':{'E':'5a','F':'6'}}}
不影响字典 1 中的原始键 A 和 B
我们还可以创建一个新的字典复制 dict1 并进行修改..
但 dict1 的结构应该保持不变
可能是你没写好dict2
,既不是字典也不是集合。也许这(dict2={'s1':[{'C':'3a','D':'4a'},{'C':'3b','D':'4b'}], 'B': {'E':'5a','F':'6a'}}
)就是你的意思。
如果这个假设是正确的,你可以这样改变dict1中键A的值:
dict1['s1']['A'] = dict2['s1']
print(dict1)
Result
{'s1': {'A': [{'C': '3a', 'D': '4a'}, {'C': '3b', 'D': '4b'}], 'B': {'E': '5', 'F': '6'}}}
假设我们有两个嵌套字典:
dict1={'s1':{'A':{'C':'3','D':'4'},'B':{'E':'5','F':'6'}}}
dict2 = {'s1':[{'C':'3a','D':'4a'},{'C':'3b','D':'4b'}], 'B': {'E':'5a','F':'6a'}}
我可以根据值为 dict2 的键替换 dict1 中的值
dict1['E']=dict2['E']
这将导致 ..
dict1={'s1':{'A':{'C':'3','D':'4'},'B':{'E':'5a','F':'6'}}}
现在 我想在 dict1 中查找 C 和 D,并替换为 dict2 中的 C 和 D 列表 输出应该是这样的:
dict1={'s1':{'A':[{'C':'3a','D':'4a'},{'C':'3b','D':'4b'}],'B':{'E':'5a','F':'6'}}}
不影响字典 1 中的原始键 A 和 B 我们还可以创建一个新的字典复制 dict1 并进行修改.. 但 dict1 的结构应该保持不变
可能是你没写好dict2
,既不是字典也不是集合。也许这(dict2={'s1':[{'C':'3a','D':'4a'},{'C':'3b','D':'4b'}], 'B': {'E':'5a','F':'6a'}}
)就是你的意思。
如果这个假设是正确的,你可以这样改变dict1中键A的值:
dict1['s1']['A'] = dict2['s1']
print(dict1)
Result
{'s1': {'A': [{'C': '3a', 'D': '4a'}, {'C': '3b', 'D': '4b'}], 'B': {'E': '5', 'F': '6'}}}