2015-11-01 61 views
-1

考慮兩個字典:創建新的字典了兩個現有的字典

dict1 = {'a': 35, 'b': 39, 'c': 20} # (with the values as integers) 

dict2 = {'a': 23, 'c': 12} 

我想獲取以下信息:

dict_new = {'a': 0.657, 'c': 0.6} # (with the values as floats, as values of dict2/dict1) 
+1

那麼你嘗試過什麼,以及究竟是它的問題? 「b」和「dict2」中不在「dict1」中的按鍵有什麼關係? – jonrsharpe

回答

3

可以使用dict2.keys() & dict1得到共同的鍵,然後就去做師:

dict1 = {'a':35, 'b': 39, 'c':20} #(with the values as integers) 

dict2 = {'a':23, 'c':12} 

d3 = {k: dict2[k]/dict1[k] for k in dict2.keys() & dict1} 

如果要將值舍入到三位小數地方使用round(dict2[k]/dict1[k],3),如果從dict2鍵應始終dict1那麼你可以簡單地遍歷dict2的項目:

d = {k:v/dict1[k] for k,v in dict2.items()} 
0
dic_new = {} 
for key in dic2.keys(): 
    dic_new[key]=float(dict2[key])/dict1[key]