2017-10-16 150 views
0

之前聲稱這個問題是重複的如何通過鍵合併字典值?

我發現了一個similar question posted here。我認爲這是因爲我正在使用python3,但我收到TypeError: unsupported operand type(s) for +: 'dict_items' and 'dict_items'AttributeError: 'dict' object has no attribute 'iterkeys'提出了各種解決方案。

問題

我有兩個字典同鍵。我想將它們合併成一個單一的字典,其中的鍵保持不變,但這些值合併在一起。

作爲一個例子,我有一些樣本成績簿數據。我想將字典鍵值對作爲標籤放置在圖例中。

dict_one = {'average' : 84, 'median' : 86.5, 'stdev' : 3.35} 
dict_two = {'average' : 'B', 'median' : 'B+', 'stdev' : 'F'} 

如何修改字典找回

dict_res = {'average' : (84, 'B'), 'median' : (86.5, 'B+'), 'stdev' : (3.35, 'F')} 

我認爲一個元組(例如:(84, 'B'))將是最好的,但一個列表(例如:[84, 'B'])可以工作了。

+1

'{關鍵:(dict_one [關鍵],dict_two [關鍵])在dict_one關鍵}'如果你總是有相同的密鑰。 –

回答

0

嘗試:

dict_one = {'average' : 84, 'median' : 86.5, 'stdev' : 3.35} 
dict_two = {'average' : 'B', 'median' : 'B+', 'stdev' : 'F'} 
ds = [dict_one, dict_two] 
d = {} 
for k in dict_one.keys(): 
    d[k] = tuple(d[k] for d in ds) 

print(d)