我想知道如何合并两个词典来创建一个新词典。假设我有两个字典:
a = {'aa' : 'aaa', 'bb' : 'bbb', 'cc' : 'ccc'}
b = {'aa' : '111', 'bb' : '222', 'dd' : '444', 'ee' : '555'}
我想创建第三个字典,使用包含在 a 和 b 中的键,但我希望值来自字典 a。所以它看起来像这样:
c = {'aa' : 'aaa', 'bb' : 'bbb'}
谁能帮我解决这个问题?
最佳答案
对于 python2 只需使用 dict.viewkeys找到字典键的交集:
dictview & 其他
Return the intersection of the dictview and the other object as a new set.
a = {'aa' : 'aaa', 'bb' : 'bbb', 'cc' : 'ccc'}
b = {'aa' : '111', 'bb' : '222', 'dd' : '444', 'ee' : '555'}
print({k:a[k] for k in a.viewkeys() & b})
{'aa': 'aaa', 'bb': 'bbb'}
对于 python3,只需使用返回 dictview 对象的 .keys:
a = {'aa' : 'aaa', 'bb' : 'bbb', 'cc' : 'ccc'}
b = {'aa' : '111', 'bb' : '222', 'dd' : '444', 'ee' : '555'}
print({k: a[k] for k in a.keys() & b})
{'aa': 'aaa', 'bb': 'bbb'}
关于python - 合并两个词典的部分以创建一个新词典,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31932007/