gpt4 book ai didi

python - 如何从两个字典的列表中收集具有相同键的值

转载 作者:行者123 更新时间:2023-11-28 20:18:26 26 4
gpt4 key购买 nike

我正在寻找一种方法来将两个字典与一些公用键相交。如果两个字典中的键相同,则最终字典应包含两个字典中值的列表

D1 = {'A':1,'B':2,'C':3,'D':4}
D2 = {'A':10,'B':20,'X':3}

将这两者相交应该得到:

{'A':[1,10], 'B':[2,20]}

交集部分工作正常

def intersect(D1,D2):
newD = {}
keys_D1 = set(D1.keys())
keys_D2 = set(D2.keys())
intersection = keys_D1 & keys_D2
for i in intersection:
newD[i] = D1.get(i)
//...(looking for a way to append the values from D1 & D2 not just D1)
return newD

newD = {'A':1,'B':2}

提前致谢!!

最佳答案

您可以通过列表推导来做到这一点;

>>> D1 = {'A':1,'B':2,'C':3,'D':4}
>>> D2 = {'A':10,'B':20,'X':3}
>>> {a:[b, c] for a, b in D1.items() for a1, c in D2.items() if a == a1}
{'B': [2, 20], 'A': [1, 10]}
>>>

关于python - 如何从两个字典的列表中收集具有相同键的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36449920/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com