給定字典,
test_dict = {"A" : 1, "B" : 3, "C" : 2, "D" : 3, "E" : 2}
我想通過減少值對專案進行排序,如果值相等,那么通過減少
我嘗試的鍵:
res = {val[0] : val[1] for val in sorted(test_dict.items(), key = lambda x: (-x[1], -x[0]))}
我收到以下錯誤:
Traceback (most recent call last):
File "<string>", line 12, in <module>
File "<string>", line 12, in <lambda>
TypeError: bad operand type for unary -: 'str'
uj5u.com熱心網友回復:
你的鑰匙是弦,你不能把它們變成負數。試試這個:
res = {val[0] : val[1] for val in
sorted(test_dict.items(), key=lambda x: (x[1], x[0]), reverse=True)}
uj5u.com熱心網友回復:
使用dict(sorted(test_dict.items(), key=lambda kv: kv[::-1], reverse=True)).
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/415639.html
標籤:
