我有2個字典。在Python中合併2個字典
dict1={('SAN RAMON', 'CA'): 1, ('UPLAND', 'CA'): 4, ('POUGHKEESIE', 'NY'): 3, ('CATTANOOGA', 'TN'): 1}
dict2={('UPLAND', 'CA'): 5223, ('PORT WASHING', 'WI'): 11174, ('PORT CLINTON', 'OH'): 6135, ('GRAIN VALLEY', 'MO'): 10352, ('GRAND JUNCTI', 'CO'): 49688, ('FAIRFIELD', 'IL'): 5165}
這些只是樣本,實際上每個字典都有數百個條目。我試圖合併這兩個字典並創建包含{dict1.values():dict2.values()}的字典3,但前提是該城市出現在兩個字典中。因此,在dict3中的一個條目看起來像
{4:5223} # for 'UPLAND', 'CA' since it appears in both dict1 and dict2
這只是我寫的一個更大的函數中的一小步。我正想嘗試類似:
for item in dict1.keys():
if item not in dict2.keys():
del item
return dict[(dict1.keys())=(dict2.keys())]
我無法弄清楚如何確保從dict1投訴數量與它匹配在dict2被提到了同一個城市。
僅舉 - 常用鍵 - 在2.7,你可以做'dict1.viewkeys()&dict2' –