我有一个python列表,其中包含以下数据:
[('c',3),('a',1),('d',1),('b',5)]
我想先订购,以便按照最高编号排序:
[('b',5),('c',3),('d',1),('a',1)]
然后按字母顺序排序
[('b',5),('c',3),('a',1),('d',1)]
我可以使用一种排序功能吗?
答案 0 :(得分:4)
试试这个:
s = [("c",3),("a",1),("d",1),("b",5)]
sorted(s, key=lambda x: (-x[1], x[0]))
# gives [('b', 5), ('c', 3), ('a', 1), ('d', 1)]