Python List cmp()知识点总结


Posted in Python onFebruary 18, 2019

描述

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

语法

cmp()方法语法:

cmp(list1, list2)

参数

list1 -- 比较的列表。
list2 -- 比较的列表。

返回值

如果比较的元素是同类型的,则比较其值,返回结果。
如果两个元素不是同一种类型,则检查它们是否是数字。

  • 如果是数字,执行必要的数字强制类型转换,然后比较。
  • 如果有一方的元素是数字,则另一方的元素"大"(数字是"最小的")
  • 否则,通过类型名字的字母顺序进行比较。

如果有一个列表首先到达末尾,则另一个长一点的列表"大"。

如果我们用尽了两个列表的元素而且所 有元素都是相等的,那么结果就是个平局,就是说返回一个 0。

实例

以下实例展示了 cmp()函数的使用方法:

#!/usr/bin/python

list1, list2 = [123, 'xyz'], [456, 'abc']

print cmp(list1, list2);
print cmp(list2, list1);
list3 = list2 + [786];
print cmp(list2, list3)

以上实例输出结果如下:

-1
1
-1

Python 3.X 的版本中已经没有 cmp 函数,如果你需要实现比较功能,需要引入 operator 模块,适合任何对象,包含的方法有:

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)

实例

>>> import operator
>>> operator.eq('hello', 'name');
False
>>> operator.eq('hello', 'hello');
True

3.0 版本开始没这个函数了,官方文档是这么写的:

The cmp() function should be treated as gone, and the __cmp__() special method is no longer supported. Use __lt__() for sorting, __eq__() with __hash__(), and other rich comparisons as needed. (If you really need the cmp() functionality, you could use the expression (a > b) - (a < b) as the equivalent for cmp(a, b).)

Python 相关文章推荐
Python中使用ElementTree解析XML示例
Jun 02 Python
CentOS 6.5下安装Python 3.5.2(与Python2并存)
Jun 05 Python
Python实现抓取网页生成Excel文件的方法示例
Aug 05 Python
python3之模块psutil系统性能信息使用
May 30 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
Feb 15 Python
Python合并同一个文件夹下所有PDF文件的方法
Mar 11 Python
Python常用特殊方法实例总结
Mar 22 Python
python版DDOS攻击脚本
Jun 12 Python
Python如何执行精确的浮点数运算
Jul 31 Python
flask开启多线程的具体方法
Aug 02 Python
python 怎样进行内存管理
Nov 10 Python
jupyter notebook指定启动目录的方法
Mar 02 Python
Python列表(List)知识点总结
Feb 18 #Python
Python元组知识点总结
Feb 18 #Python
pandas数据集的端到端处理
Feb 18 #Python
Python 数据库操作 SQLAlchemy的示例代码
Feb 18 #Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
Feb 18 #Python
Python File(文件) 方法整理
Feb 18 #Python
Python异常处理知识点总结
Feb 18 #Python
You might like
PHP运行模式的深入理解
2013/06/03 PHP
php 类自动载入的方法
2015/06/03 PHP
Yii2 assets清除缓存的方法
2016/05/16 PHP
PHP简单实现欧拉函数Euler功能示例
2017/11/06 PHP
PHP错误提示It is not safe to rely on the system……的解决方法
2019/03/25 PHP
js 方法实现返回多个数据的代码
2009/04/30 Javascript
js RuntimeObject() 获取ie里面自定义函数或者属性的集合
2010/11/23 Javascript
jQuery EasyUI API 中文文档 - DataGrid数据表格
2011/11/17 Javascript
javascript时间自动刷新实现原理与步骤
2013/01/06 Javascript
jQuery getJSON()+.ashx 实现分页(改进版)
2013/03/28 Javascript
jQuery javaScript捕获回车事件(示例代码)
2013/11/07 Javascript
举例讲解JavaScript中将数组元素转换为字符串的方法
2015/10/25 Javascript
JavaScript中的return语句简单介绍
2015/12/07 Javascript
js 递归和定时器的实例解析
2017/02/03 Javascript
jQuery Pagination分页插件_动力节点Java学院整理
2017/07/17 jQuery
Angular4绑定html内容出现警告的处理方法
2017/11/03 Javascript
微信小程序 swiper 组件遇到的问题及解决方法
2019/05/26 Javascript
Nodejs监控事件循环异常示例详解
2019/09/22 NodeJs
JavaScript构造函数原理及实现流程解析
2020/11/19 Javascript
[01:02:02]DOTA2上海特级锦标赛A组败者赛 EHOME VS CDEC第二局
2016/02/25 DOTA
[42:35]2018DOTA2亚洲邀请赛3月30日 小组赛A组 VG VS OpTic
2018/03/31 DOTA
Python selenium文件上传方法汇总
2020/11/19 Python
Python unittest单元测试框架总结
2018/09/08 Python
Python中求对数方法总结
2020/03/10 Python
解决Python Matplotlib绘图数据点位置错乱问题
2020/05/16 Python
Alpine安装Python3依赖出现的问题及解决方法
2020/12/25 Python
html5启动原生APP总结
2020/07/03 HTML / CSS
如何使用amaze ui的分页样式封装一个通用的JS分页控件
2020/08/21 HTML / CSS
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
通息工程毕业生自荐信
2013/10/16 职场文书
六个一活动实施方案
2014/03/21 职场文书
技术股份合作协议书
2014/10/05 职场文书
2014年公司工作总结
2014/11/22 职场文书
装配车间主任岗位职责
2015/04/08 职场文书
员工手册编写范本
2015/05/14 职场文书
Vue h函数的使用详解
2022/02/18 Vue.js