2013-04-04 45 views
3

我有字典如何使用字典功能?

d = {'a':3, 'b':7, 'c':8} 

我想知道我怎麼能扭轉字典的順序,以使它看起來像這樣:

d = {3:'a', 7:'b', 8:'c'} 

我想做到這一點,而不只是寫它是這樣的。 有沒有一種方法可以使用第一個字典來獲得新的結果?

+4

它不排序。只需倒轉鍵和值。起初我也誤解了 – mshsayem 2013-04-04 05:29:48

+3

_dict_不應該用作變量 – mshsayem 2013-04-04 05:37:59

+0

不要使用'dict'作爲變量名,python內建字典類已經被稱爲'dict' – jamylak 2013-04-04 05:42:40

回答

11

是的。您可以在字典上調用items以獲取(鍵,值)對的列表。然後,你可以扭轉元組,並通過新的列表到dict

transposed = dict((value, key) for (key, value) in my_dict.items()) 

的Python 2.7和3.x也有字典解析,這使得它更好:

transposed = {value: key for (key, value) in my_dict.items()} 
+4

字典comps存在於2.7+中,而不僅僅是3.x – 2013-04-04 05:26:48

1
transposed = dict(zip(d.values(), d))