2015-11-13 31 views
1

所以我有一個關鍵字及其對應值的元組列表。我想有它顯示爲一個字典,所以我寫了如何從一個元組列表中創建一個字典而不覆蓋第一個唯一鍵值?

def tup_to_dict (lst): 
    return dict(lst) 

現在,如果我的LST是[("A3", "green"), ("B5", "blue"), ("A3", "yellow")],我的輸出將被:

{'B5': 'blue', 'A3': 'yellow'} 

我怎麼會去某個鍵檢查已經被賦值並且不覆蓋它,如果是的話。這樣我的輸出將如下所示:

{"A3": "green", "B5": "blue"} 

謝謝!

回答

6

dict使用最後一個值,你想使用第一個值... swap'em!

return dict(reversed(lst)) 
+0

整潔!感謝一羣夥伴! – Blitva

1

這也適用於:

a = [("A3", "green"), ("B5", "blue"), ("A3", "yellow")] 
b = dict((x,y) for x,y in reversed(a)) 
相關問題