cmp()函数在Python面向对象编程中起什么作用?
cmp()函数
cmp(x,y)函数比较两个参数x和y的值-
cmp(x,y)
返回值为-
如果x小于y,则为负数。
如果x等于y,则为零。
如果x大于y,则为正数。
内置的cmp()函数通常仅返回值-1、0或1。但是,在其他地方,期望函数具有相同的调用顺序,并且这些函数可能返回其他值。最好只观察结果的征兆。
>>> cmp(2,8) -1 >>> cmp(6,6) 0 >>> cmp(4,1) 1 >>> cmp('stackexchange', 'stackoverflow') -1
cmp()方法比较两个列表的元素。
语法
cmp(list1, list2)
如果元素属于同一类型,则执行比较并返回结果。如果元素是不同类型,请检查它们是否为数字。
如果是数字,请在必要时执行数字强制转换并进行比较。
如果一个元素是数字,则另一个元素是“更大”(数字是“最小”)。
否则,类型将按名称的字母顺序排序。
如果我们到达其中一个列表的末尾,则较长的列表将为“较大”。如果我们用尽两个列表并共享相同的数据,则结果为平局,表示返回0。
示例
以下示例显示了cmp()方法的用法。
list1, list2 = [456, 'xyz'], [789, 'abc'] print cmp(list1, list2) print cmp(list2, list1) list3 = list2 + [896]; print cmp(list2, list3)
输出结果
当我们运行上面的程序时,它产生以下结果-
-1 1 -1