因此,在python中对列表进行排序时,sorted
函数可以使用cmp
关键字来覆盖我们正在排序的对象的__cmp__
函数。
我希望max
有一个类似的关键字,但事实并非如此。人们知道为什么吗?
在任何情况下,任何人都知道最狡猾的方式解决这个问题?我不想为类本身覆盖__cmp__
,而我能想到的其他选项如sorted(L,cmp=compare)[0]
似乎很难看。这样做的好方法是什么?
实际示例以L=[a1,a2,...,an]
给出,其中每个ak
本身就是一个整数列表,我们希望ai<aj
在词典意义上的最大值。
答案 0 :(得分:4)
请勿使用cmp
。它已从Python3中删除,转而使用key
。
由于Python按字典顺序比较字符串,您可以使用key = str
来查找“最大”整数:
In [2]: max([10,9], key = str)
Out[2]: 9