2017-05-25 42 views
-2

我有這樣的Python代碼:如何按包含指定值的字母順序打印字典?

def dictofvalues(): 
    values = {'A': '1', 'C': '3', 'B': '2'} 
    return(values) 

def main(): 
    values = dictofvalues() 
    print(sorted(values)) 

它打印:A,B,C.

但是,我想它打印答:1,B:2,C:3。 換句話說,我希望它打印具有指定值的項目。

怎麼去做這件事?

+0

如果你想讓它對鍵進行排序,最簡單/最直接的方法就是創建一個for循環:'對於排序(值)中的鍵:print(「{}:{}」。format(key,values [key])) 。 – Evert

+1

可能重複[如何按鍵排序字典?](https://stackoverflow.com/questions/9001509/how-can-i-sort-a-dictionary-by-key) – pvg

+0

天才。完美的作品。非常感謝那個:) –

回答

-1

只需打印出的字典作爲元組的列表:

def dictofvalues(): 
    values = {'A': '1', 'C': '3', 'B': '2'} 
    return(values) 

def main(): 
    values = dictofvalues().items() 
    print(sorted(values)) 
+0

也完美的作品,這裏沒有問題。感謝這種方法,特別感謝實際的代碼! :D –

+0

@調查問題沒有問題,請隨時通過點擊綠色檢查來接受此答案,以給予我們雙方的聲譽,並通知社區您已找到滿意的答案 –

0

您可以使用OrderedDict從模塊類別:

from collections import OrderedDict 

def dictofvalues(): 
    values = {'A': '1', 'C': '3', 'B': '2'} 
    return(values) 

def main(): 
    values = dictofvalues() 
    print(OrderedDict(sorted(d.items()))) 

我希望它能幫助,