没有内置的方法来处理此问题。对于一般情况,您必须进行两次排序:首先通过次要排序,然后再通过主要排序。正如@Mark Ransom在其评论中提到的,在许多情况下,变量是数字的,因此您可以使用负值来翻转顺序。
如果您知道要排序的变量的类型以及如何使用它,则还可以编写一个键函数,该键函数返回递增值的递减值。有关字符串的示例,请参见此线程。(基本上,您采用字符的ASCII数值的负数。)
在Python 2中,您也可以使用cmp
函数代替键,但这可能会使排序变慢。是否使它变慢取决于列表的大小和未排序。在Python 3中,该cmp
参数消失了,但是正如@Mark Ransom所指出的,您可以使用cmp_to_key
。