1.sorted函數按key值對字典排序ide
先來基本介紹一下sorted函數,sorted(iterable,key,reverse),sorted一共有iterable,key,reverse這三個參數。函數
其中iterable表示能夠迭代的對象,例如能夠是dict.items()、dict.keys()等,key是一個函數,用來選取參與比較的元素,reverse則是用來指定排序是倒序仍是順序,reverse=true則是倒序,reverse=false時則是順序,默認時reverse=false。spa
要按key值對字典排序,則能夠使用以下語句:orm
直接使用sorted(d.keys())就能按key值對字典排序,這裏是按照順序對key值排序的,若是想按照倒序排序的話,則只要將reverse置爲true便可。對象
2.sorted函數按value值對字典排序排序
要對字典的value排序則須要用到key參數,在這裏主要提供一種使用lambda表達式的方法,以下:it
這裏的d.items()其實是將d轉換爲可迭代對象,迭代對象的元素爲(‘lilee’,25)、(‘wangyan’,21)、(‘liqun’,32)、(‘lidaming’,19),items()方法將字典的元素轉化爲了元組,而這裏key參數對應的lambda表達式的意思則是選取元組中的第二個元素做爲比較參數(若是寫做key=lambda item:item[0]的話則是選取第一個元素做爲比較對象,也就是key值做爲比較對象。lambda x:y中x表示輸出參數,y表示lambda函數的返回值),因此採用這種方法能夠對字典的value進行排序。注意排序後的返回值是一個list,而原字典中的名值對被轉換爲了list中的元組。class