https://www.yiibai.com/python/list_cmp.html
- 如果元素的类型相同,则执行比较并返回结果。如果元素是不同的类型,则检查它们是否是数字。
- 如果数字,必要时进行数字强制比较。
- 如果任一元素是数字,则另一个元素是“较大的”(数字值“最小”)。
- 否则,类型按名称按字母顺序排序。
如果到达其中一个列表的末尾,则较长的列表是“较大的”。 如果排除两个列表并共享相同的数据,结果返回0
。
如果 list1 < list2
返回 -1
, 如果 x == y
返回 0
, 如果 list > list2
返回 1
。
示例
以下示例显示了cmp()
方法的用法。
#!/usr/bin/python3
list1, list2 = [123, 'xyz'], [456, 'abc']
print cmp(list1, list2)
print cmp(list2, list1)
list3 = list2 + [786];
print cmp(list2, list3)
Python
当运行上面的程序,它产生以下结果 -
-1
1
-1
Shell
注意:在python3中,不能使用这个函数
查看python的帮助文档,在oprater这个模块中有了这么几个函数 -
operator.lt(a, b)
operator.le(a, b)
operator.eq(a, b)
operator.ne(a, b)
operator.ge(a, b)
operator.gt(a, b)
operator.__lt__(a, b)
operator.__le__(a, b)
operator.__eq__(a, b)
operator.__ne__(a, b)
operator.__ge__(a, b)
operator.__gt__(a, b)
Python
这几个函数就是用来替换之前的cmp()
,之前使用cmp的同胞们,以后就换上面这些函数。
下面简单说下这几个函数的意思 -
lt(a, b) 相当于 a < b
le(a,b) 相当于 a <= b
eq(a,b) 相当于 a == b
ne(a,b) 相当于 a != b
gt(a,b) 相当于 a > b
ge(a, b)相当于 a>= b
原文出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/python/list_cmp.html