以下内容适用于您的输入:
d = [('B', 3), ('A', 2), ('A', 1), ('I', 1), ('J', 1)]sorted(d,key=lambda x:(-x[1],x[0]))
由于您的“值”是数字,因此您可以通过更改符号轻松地反转排序顺序。
换句话说,这种排序按值(
-x[1])进行排序(负号先放置大数字),然后对相同的数字按键(
x[0])进行排序。
如果不能轻易地“否定”您的价值观以将大项目放在首位,那么一个简单的解决方法是将两次排序:
from operator import itemgetterd.sort(key=itemgetter(0))d.sort(key=itemgetter(1),reverse=True)
之所以有效,是因为python的排序是稳定的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)