我們如何按降序對字典中的值進行排序,如果有兩個相似的值,則按字母順序對這些值的鍵進行排序?
像下面的例子:
Input = {'robert':13, 'walter':17, 'andrew':16, 'adrian':16, 'simon':15, 'santiago':15}
Output = {'walter':17, 'adrian':16, 'andrew':16, 'santiago':15, 'simon':15}
uj5u.com熱心網友回復:
您可以使用sorted和設定您想要的密鑰,如下所示:
(這里首先要排序descending上value,然后排序ascending上key,如果值相等):
>>> dct = {'robert':13, 'walter':17, 'andrew':16, 'adrian':16, 'simon':15, 'santiago':15}
>>> dict(sorted(dct.items(), key=lambda x: (-x[1],x[0])))
{'walter': 17,
'adrian': 16,
'andrew': 16,
'santiago': 15,
'simon': 15,
'robert': 13}
uj5u.com熱心網友回復:
您可以通過這種方式對字典的值進行排序:
output = dict(sorted(inp.items(), key=lambda item: item[1], reverse=True))
輸出:
{'walter':17,'andrew':16,'adrian':16,'simon':15,'santiago':15,'robert':13}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/350549.html
上一篇:Python-動態字典的家庭作業
