2016-11-28 67 views
-2

我还没有找到解决方案,但我希望它是微不足道的。我有两本词典:在python中按键值组合2个字典

dictA: 包含文本中单词的订单号作为关键词:单词作为值 例如,

{0:'Roses',1:'are',2:'red'...12:'blue'} 

dictB: 包含这些词数在文本 例如

{'Roses':2,'are':4,'blue':1} 

我想在dictB值通过在dictB键替换格言值,检查诺内斯,由0替换

所以输出应该是这样的:

{0:2,1:4,2:0...12:1} 

是有办法做到这一点,优先不引入自己的功能?

+2

请注明你尝试过什么。 –

回答

5

使用字典解析和应用字典Bget方法返回0对于未在B找到的项目:

>>> A = {0:'Roses',1:'are',2:'red', 12:'blue'} 
>>> B = {'Roses':2,'are':4,'blue':1} 
>>> {k: B.get(v, 0) for k, v in A.items()} 
{0: 2, 1: 4, 2: 0, 12: 1} 
+0

很酷,谢谢。那正是我所期待的。 – Elena