python字典如何按value值排序

silencement
發布: 2019-07-08 10:19:43
原創
7113 人瀏覽過

python字典如何按value值排序

sorted函數

首先介紹sorted函數,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse這三個參數。

其中iterable表示可以迭代的對象,例如可以是dict.items()、dict.keys()等,key是一個函數,用來選取參與比較的元素,reverse則是用來指定排序是倒序還是順序,reverse=true則是倒序(從大到小),reverse=false則是順序(從小到大),預設是reverse=false。

依照value值排序

共有三種方法可以實作將字典依照value值進行排序

key使用lambda匿名函數取value進行排序

d = {'lilee':25, 'wangyan':21, 'liqun':32, 'age':19}
sorted(d.items(), key=lambda item:item[1])
登入後複製

輸出結果為

[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
登入後複製
登入後複製
登入後複製

如果需要倒序則

sorted(d.items(), key=lambda item:item[1], reverse=True)
登入後複製

得到的結果就會是

[('liqun',32),('lilee',25),('wangyan',21),('age',19)]
登入後複製

使用operator的itemgetter進行排序

import operator
sorted(d.items(), key=operator.itemgetter(1))
登入後複製

輸出結果為

[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
登入後複製
登入後複製
登入後複製

將key和value分裝成元組,再進行排序

f = zip(d.keys(), d.values())
c = sorted(f)
登入後複製

輸出結果為

[('age',19),('wangyan',21),('lilee',25),('liqun',32)]
登入後複製
登入後複製
登入後複製

以上是python字典如何按value值排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板