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 网络编程起步(Socket发送消息)
Sep 06 Python
python读取浮点数和读取文本文件示例
May 06 Python
Python实现的监测服务器硬盘使用率脚本分享
Nov 07 Python
Python使用metaclass实现Singleton模式的方法
May 05 Python
Python中字符串的格式化方法小结
May 03 Python
Python3的urllib.parse常用函数小结(urlencode,quote,quote_plus,unquote,unquote_plus等)
Sep 18 Python
python 判断是否为正小数和正整数的实例
Jul 23 Python
使用python itchat包爬取微信好友头像形成矩形头像集的方法
Feb 21 Python
Python并发请求下限制QPS(每秒查询率)的实现代码
Jun 05 Python
python使用selenium爬虫知乎的方法示例
Oct 28 Python
Django启动时找不到mysqlclient问题解决方案
Nov 11 Python
pycharm激活码2020最新分享适用pycharm2020最新版亲测可用
Nov 22 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
回首过去10年中最搞笑的10部动漫,哪一部让你节操尽碎?
2020/03/03 日漫
PHP模板引擎Smarty内建函数详解
2016/04/11 PHP
Yii框架表单模型和验证用法
2016/05/20 PHP
php DES加密算法实例分析
2019/09/18 PHP
贴一个在Mozilla中常用的Javascript代码
2007/01/09 Javascript
javascript实现的动态添加表单元素input,button等(appendChild)
2007/11/24 Javascript
纯js网页画板(Graphics)类简介及实现代码
2012/12/24 Javascript
JSON为什么那样红为什么要用json(另有洞天)
2012/12/26 Javascript
jQuery Ajax异步处理Json数据详解
2013/11/05 Javascript
javascript实现禁止复制网页内容
2014/12/16 Javascript
jQuery中Ajax的load方法详解
2015/01/14 Javascript
javascript实现类似百度分享功能的方法
2015/07/27 Javascript
JS数组排序技巧汇总(冒泡、sort、快速、希尔等排序)
2015/11/24 Javascript
Bootstrap每天必学之日期控制
2016/03/07 Javascript
JS设计模式之命令模式概念与用法分析
2018/02/06 Javascript
vuex实现的简单购物车功能示例
2019/02/13 Javascript
python获取文件版本信息、公司名和产品名的方法
2014/10/05 Python
离线安装Pyecharts的步骤以及依赖包流程
2020/04/23 Python
分享给Python新手们的几道简单练习题
2017/09/21 Python
Python中对象的引用与复制代码示例
2017/12/04 Python
Python实现的对本地host127.0.0.1主机进行扫描端口功能示例
2019/02/15 Python
Django集成CAS单点登录的方法示例
2019/06/10 Python
利用python读取YUV文件 转RGB 8bit/10bit通用
2019/12/09 Python
django xadmin action兼容自定义model权限教程
2020/03/30 Python
html5 touch事件实现触屏页面上下滑动(二)
2016/03/10 HTML / CSS
吃透移动端 1px的具体用法
2019/12/16 HTML / CSS
澳大利亚首个在线预订旅游网站:Wotif
2017/07/19 全球购物
工程建设实施方案
2014/03/14 职场文书
我的理想演讲稿
2014/04/30 职场文书
创建青年文明号材料
2014/05/09 职场文书
个人作风建设自查报告
2014/10/22 职场文书
四川省传达学习贯彻党的群众路线教育实践活动总结大会精神新闻稿
2014/10/26 职场文书
2015幼儿园庆元旦活动方案
2014/12/09 职场文书
锦旗赠语
2015/06/23 职场文书
送给客户微信问候语!
2019/07/04 职场文书
留学文书中的个人陈述,应该注意哪些问题?
2019/08/23 职场文书