Python:由(int,string)对组成的排序列表,按int递减,按字符串递增?

2024-04-26 14:54:01 发布

您现在位置:Python中文网/ 问答频道 /正文

如何对由(int,string)对组成的列表进行排序,按int降序,按字符串升序


Tags: 字符串列表string排序int升序降序
1条回答
网友
1楼 · 发布于 2024-04-26 14:54:01

可以将sorted与自定义key参数一起使用。在这种情况下,否定int将导致下降行为,然后离开str将导致上升行为。如果第一个键(int)相同,将它们放入元组将允许字典排序行为

>>> data = [(1, 'hello'), (7, 'bar'), (4, 'foo'), (4, 'world')]
>>> sorted(data, key=lambda i: (-i[0], i[1]))
[(7, 'bar'), (4, 'foo'), (4, 'world'), (1, 'hello')]

相关问题 更多 >