我有一個 python 字典,其中包含字符串鍵和整數值。我想按值排序,如果兩個值相同,則按鍵對字典進行排序。字典的一個例子。是:{'Spain':3,'Morocco':1,'England':3,'canada':2}排序后應該是:{'England':3,'Spain':3,'canada':2,'Morocco':1}
1 回答

狐的傳說
TA貢獻1804條經驗 獲得超3個贊
您可以嘗試下面的方法,該方法按字典項目對字典進行排序。
-item[1]按值降序排序,item[0]按鍵升序排序。因為排序的結果是元組列表,所以我們需要使用dict()構造函數調用將其轉換為字典。
d = {'Spain': 3, 'Morocco': 1, 'England': 3, 'canada': 2}
out = dict(sorted(d.items(), key=lambda item: (-item[1], item[0])))
print(out)
輸出:
{'England': 3, 'Spain': 3, 'canada': 2, 'Morocco': 1}
添加回答
舉報
0/150
提交
取消