小编Ari*_*jit的帖子

比较器如何处理python中无法比较的对象?

我已经定义了一个列表如下:

list = [1,3,2,[4,5,6]]
Run Code Online (Sandbox Code Playgroud)

然后定义了一个比较方法如下:

def reverseCom(x,y):
   if(x>y):
        return -1
   elif(x<y):
        return 1
   else:
        return 0
Run Code Online (Sandbox Code Playgroud)

现在我使用reverseCom对列表进行了排序:

list.sort(reverseCom)
print list
Run Code Online (Sandbox Code Playgroud)

结果:[[4,5,6],3,2,1]

虽然元素[4,5,6]与列表中的其他元素不具有可比性.怎么不抛出任何错误?

你能帮助我理解python中用户定义的比较器的排序是如何工作的吗?

python

7
推荐指数
2
解决办法
213
查看次数

标签 统计

python ×1