2013-11-20 33 views
0

我有两个词典相同的按键,但不同的值:比较的关键词典的两个列表,并返回重复

dic1 = {'popped': ['question', '30', 'balloon', '18', 'zit', '10', 'popcorn', '6', 'pimple', '6', 'cherry', '5'], 
'planted': ['tree', '30', 'seed', '28', 'flower', '20', 'plant', '7', 'bomb', '4', 'garden', '2'], 
'distilled ': ['water', '45', 'vodka', '9', 'vinegar', '7', 'beer', '6', 'alcohol', '5', 'whiskey', '5'] } 

dic2 = {'popped ': ['question', '30', 'balloon', '18', 'zit', '10', 'popcorn', '6', 'pimple', '6'] 
'planted ': ['flower', '28', 'tree', '18', 'seed', '9', 'vegetable', '4', 'bush', '3', 'grass', '3'], 'aaron distilled ': ['water', '14', 'vinegar', '9', 'wine', '8', 'alcohol', '8']} 

我想比较他们两个找到两个重复的值,以便我的结果是这样的:

dic3 = {'popped ': ['balloon', 'question', 'popcorn'], 
'planted ': ['flower', 'tree', 'seed'], 
'distilled ': ['water', 'vinegar','alcohol']} 

我试过索姆e不同的事情,但我不会接近成功。你对每个方向有什么建议吗?我非常感谢你!

回答

1
dic3=dict() 

    for key, val in dic1.items(): 
     val2=dic2[key] 

     val3=set(val).intersection(set(val2)) 
     dic3[key]=val3 
+0

谢谢!完善! – user3008918

相关问题