Python面向对象编程中cmp()函数是做什么的?

Python面向对象编程中cmp()函数是做什么的?

更多Python相关文章,请阅读:Python 教程

cmp()函数

cmp(x,y)函数比较两个参数x和y的值 –

cmp(x, y)

返回值是 –

1. 如果x小于y,则返回负数。

2. 如果x等于y,则返回零。

3. 如果x大于y,则返回正数。

内置的cmp()函数通常只返回值-1,0或1。然而,其他需要有相同调用序列的函数的地方可能会返回其他的值。最好只观察结果的符号。

>>> cmp(2,8)
-1
>>> cmp(6,6)
0
>>> cmp(4,1)
1
>>> cmp('stackexchange', 'stackoverflow')
-1
Python

方法cmp()比较两个列表的元素。

语法

cmp(list1, list2)
Python

如果元素是相同类型,则执行比较并返回结果。如果元素是不同类型,则检查它们是否是数字。

如果它们是数字,则如果必要进行数字强制转换并比较。

如果一个元素是数字,那么另一个元素就“更大”(数字是“最小的”)。

否则,按名称按字母顺序排序。

如果我们到达其中一个列表的末尾,则较长的列表“更大”。如果我们排除了两个列表并共享相同的数据,则结果是平局,这意味着返回0。

示范

以下示例显示了cmp()方法的用法。

list1, list2 = [456, 'xyz'], [789, 'abc']
print cmp(list1, list2)
print cmp(list2, list1)
list3 = list2 + [896];
print cmp(list2, list3)
Python

输出

运行上述程序后,会产生以下结果 –

-1
1
-1
Python

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程

登录

注册