python-cmp()的使用
注意:python3中已经删除了cmp()该函数。
cmp(x,y)
比较x与y,当x>y时,返回1; 当x==y时,返回0; 当x<y时,返回-1;
>>>cmp(1,0)
1
>>>cmp(1,1)
0
>>>cmp(1,2)
-1
>>>cmp('a','b')
-1
>>>cmp('abc','ab')
1
#因为'abc'的长度大于'ab',所以判定'abc'>'ab'
特殊的地方:
1.如果比较的类型不相同,但都是数字(整形和浮点类型),则进行强制的数字转换后再进行判断(对于哪个类型进行强制转换,这个有点疑问,但是觉得并不重要);
2.如果X为数字,Y非数字,则X<Y(数字是最小的);
>>> print True == 1
True
>>> print True == 0
False
>>> print False == 1
False
>>> print False == 0
True
#Bool类型中的True和False在计算机中也用1和0表示
3.当X、Y都不是数字且类型不同的时候,对其类型的名称(String,Bool...)进行判断;
>>> cmp(True,'True')
-1
>>> cmp(False,'True')
-1
以上是单纯的比较两个数据,下面是比较列表。
>>> list1 = [1,2,3]
>>> list2 = [1,2,3]
>>> cmp(list1,list2)
0
>>> list2[2] = 4
>>> cmp(list1,list2)
-1
>>> list1 = ['abc','a']
>>> list2 = ['abc',1]
>>> cmp(list1,list2)
1
>>> list2[1] = 'b'
>>> cmp(list1,list2)
-1
>>> list2[1] = True
>>> cmp(list1,list2)
1
python-cmp()的使用的更多相关文章
- Python cmp() 函数
描述 cmp(x,y) 函数用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. 语法 以下是 cmp() 方法的语法:cmp( ...
- python字符串操作大全
1.去空格 strip() >>> s = 'a b c d ' >>> s.strip() 'a b c d' 2.lstrip() 方法用于截掉字符串左边的空格 ...
- Python3 operator模块关联代替Python2 cmp() 函数
Python2 cmp() 函数 描述 cmp(x,y) 函数用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. Python ...
- python中的is、==和cmp()比较字符串
python 中的is.==和cmp(),比较字符串 经常写 shell 脚本知道,字符串判断可以用 =,!= 数字的判断是 -eq,-ne 等,但是 Python 确不是这样子地.所以作为慢慢要转换 ...
- python中 cmp
python3.*版本中取消了数值之间的比较:cmp(x, y).取而代之的是 (x > y) - (x < y) 因为python中 false 为 0, true 为 1.
- Python的内建比较函数cmp比较原理剖析-乾颐堂
cmp( x, y):比较2个对象,前者小于后者返回-1,相等则返回0,大于后者返回1. Python的cmp比较函数比较原理 Python的cmp函数可以比较同类型之间,或者不同数据类型之间.然后根 ...
- python中sort()方法的cmp参数
<python基础编程>里有讲到一段高级排序: “如果希望元素能按照特定的方式进行排序(而不是sort函数默认的方式,即根据python的默认排序规则按升序排列元素,第5章内对此进行讲解) ...
- [python学习篇][书籍学习][python standrad library][内建函数]之[all,any,basestring,isinstance,bin,bool,@classmethod,@staticmethod,cmp,enumerate
Python 解释器内置了一些函数,它们总是可用的.这里将它们按字母表顺序列出. Built-in Functions abs() divmod() input() open() st ...
- 浅谈python中的“ ==” 与“ is”、还有cmp
总之,比较内容相等使用 ‘==’ 1.is" 是用来比较 a 和 b 是不是指向同一个内存单元,而"=="是用来比较 a 和 b指向的内存单元中的值是不是相等 2.pyt ...
- 【python比较两个列表list】 python2 cmp() python3 operator模块
https://www.yiibai.com/python/list_cmp.html 如果元素的类型相同,则执行比较并返回结果.如果元素是不同的类型,则检查它们是否是数字. 如果数字,必要时进行数字 ...
随机推荐
- Android开发(30)--AutoCompleteTextView和MultiAutoCompleteTextView自动提示输入内容
首先大家都见过类似这种效果, AutoCompleteTextView是实现动态匹配输入的内容 下面就通过一个实例来说明AutoCompleteTextView,同样,AutoCompleteText ...
- kubernetes入门之快速部署
角色说明 这里主要有三个角色,分别部署不同的服务. 角色 服务 etcd etcd master kube-apiserver/kube-scheduler/kube-controller node ...
- anadonca环境配置和模块安装
1.最方便的python环境配置: 下载anaconda即可,自带spyder,集成科学计算的库,自带pip,不用折腾. 想用sublime编写python并运行的话,需要自己配置编译环境,并下载插件 ...
- HashMap 死循环的探究
大家都知道,HashMap采用链表解决Hash冲突,具体的HashMap的分析可以参考一下http://zhangshixi.iteye.com/blog/672697 的分析.因为是链表结构,那么就 ...
- java基础练习 11
import java.util.Scanner; public class Eleventh { /*给一个不多于5位的正整数,要求:一.求它是几位数,二.逆序打印出各位数字. (5 分数)*/ p ...
- Glide的常用方法注释
Glide简单使用1.)添加引用 build.gradle 中添加配置 compile 'com.github.bumptech.glide:glide:3.7.0' 2.)设置绑定生命周期 我 ...
- saltstack布署实践 【配置文件管理-state模块】
那如果要批量修改被管机器的某个配置文件怎么做?以下给出一个最简单案例. 先在主管机器master上查看/etc/salt/master配置文件 看到有以下几行配置文件 # file_roots ...
- keychain的使用
通常情况下,我们用NSUserDefaults存储数据信息,但是对于一些私密信息,比如密码.证书等等,就需要使用更为安全的keychain了.keychain里保存的信息不会因App被删除而丢失,在用 ...
- web前端入门
看到很多同学在咨询:学习前端该怎么入门啊.推荐一下前端入门书籍啊什么的,作为一个过来人,我想告诉你一些小小技巧,避免走弯路: 1.先敲再学.如果你是零基础,就不要去每个标签,每个属性地去抠,因为里面有 ...
- DOM学习笔记--入门1
HTML DOM 是关于如何获取.修改.添加或删除 HTML 元素的标准. 首先节点有很多种,不仅仅HTML元素是节点,尤其 要注意文本节点的存在. 根据 W3C 的 HTML DOM 标准,HTML ...