Python列表cmp()方法比较两个列表。
语法
以下是cmp()方法的语法 -
cmp(list1, list2)
参数
list1 - 这是要比较的第一个列表。
list2 - 这是第二个要比较的列表。
返回值
如果元素的类型相同,则执行比较并返回结果。如果元素是不同的类型,则检查它们是否是数字。如果数字,必要时进行数字强制比较。
如果任一元素是数字,则另一个元素是“较大的”(数字值“最小”)。
否则,类型按名称按字母顺序排序。
如果到达其中一个列表的末尾,则较长的列表是“较大的”。 如果排除两个列表并共享相同的数据,结果返回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)
当运行上面的程序,它产生以下结果 -
-1
1
-1
注意:在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)
这几个函数就是用来替换之前的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
¥ 我要打赏
纠错/补充
收藏
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。