[python] 將 dictionary 排序並由大往下排

【如果覺得文章寫的好的話希望能按一下讚或分享喔】

image

 

定義以下 function

#排序 dictionary
def sortedDict(d):
    items=d.items()
    backitems=[ [v[1],v[0]] for v in items]
    backitems.sort()
    return [ backitems[i][1] for i in range(0,len(backitems))]

會回傳一個 list 型態,根據值去 sort 並回傳 key 的順序

範例如下:

test={}
test['num1']=10
test['num2']=66
test['num3']=34
test['num4']=21
test['num5']=77
test['num6']=12

t = sortedDict(test)
        for h in t:
            print h  #依照排序後的順位印出來 (由小而大)

 

印出的結果為

num1
num6
num4
num3
num2
num5

 

如果要改由大而小排序

因為回傳的型態是 list ,可以使用 reverse() fn 來改變順序

t.reverse()
        for h in t:
            print h

印出的結果為

num5
num2
num3
num4
num6
num1

Related Posts Plugin for WordPress, Blogger...
【如果覺得文章寫的好的話希望能按一下讚或分享喔】

彭其捷

想要做出很棒的產品,所以我寫程式,也研究介面 (UI) 與使用者經驗 (UX),並思考管理的法則。

【Profile】http://about.me/divaka

twitter facebookgooglepluslinkedinbloggertumblrflickryoutubedribbblerssemail


Fatal error: Uncaught Exception: 12: REST API is deprecated for versions v2.1 and higher (12) thrown in /home/content/63/7692663/html/blog/wp-content/plugins/seo-facebook-comments/facebook/base_facebook.php on line 1273