Python如何自定义排序功能?

1 个回答|227 次阅读
Coco老师 - 公众号:量位学堂Qbit编程
擅长:编程教育

可以使用关键字参数key = function, 自定义自己的函数。

该函数将返回一个数字,该数字将用于对列表进行排序(首先是最小数字):

例如:根据数字与 50 的接近程度对列表进行排序:

def myfunc(n):
  return abs(n - 50)
thislist = [100, 50, 65, 82, 23]
thislist.sort(key = myfunc)
print(thislist)

执行结果:

[50, 65, 23, 82, 100]