You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python不使用lambda实现二维列表按指定规则排序的方法

list.sort()的key参数接收的是一个可调用对象,排序时会自动将列表的每个元素作为参数传入该对象,不需要手动传递参数,直接把函数名传给key即可,函数内部返回对应的排序规则值就行。

完整可运行代码如下:

lst = [[7, 0], [4, 4], [7, 1], [5, 0], [6, 1], [5, 2]]
def compare(x):
    # 第一个元素取负值实现逆序,第二个元素直接返回实现正序
    return (-x[0], x[1])
lst.sort(key=compare)
print(lst)

运行后输出结果和lambda实现的效果完全一致:
[[7, 0], [7, 1], [6, 1], [5, 0], [5, 2], [4, 4]]

内容的提问来源于stack exchange,提问作者Sharhad Bashar

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.24 00:15:04