不带 functools.cmp_to_key(func) 的 python 比较

问题描述 投票:0回答:1

我想在与列表中的值进行一些复杂的比较后对列表进行排序。例如,

sorted_result = sorted(unsorted_list, key=functools.cmp_to_key(complex_compare), reverse=True)

其中 complex_compare 是当前正在进行所述比较的方法。

但是,我想这样做而不使用functools.cmp_to_key,因为我正在浏览python文档,我看到它说:

该函数主要作为程序的过渡工具 从支持比较使用的 Python 2 转换而来 功能。

我查找了一下,找不到一种简单的方法来做类似的事情,这只是不是过渡性的(我对此有点惊讶——不确定我是否错过了什么)。做我正在寻找的事情的好方法是什么?

python python-3.x list sorting
1个回答
0
投票

只需提供一个关键函数,该函数将为每个元素返回一些值,以便比较这些值将得出正确的顺序。通常,您可以通过算法转换比较函数来编写比 Python 生成的更好的函数。

© www.soinside.com 2019 - 2024. All rights reserved.