python-cmp()的使用

注意:python3中已经删除了cmp()该函数。

cmp(x,y)

比较x与y,当x>y时,返回1;  当x==y时,返回0;  当x<y时,返回-1;

 1 >>>cmp(1,0)
 2 1
 3 >>>cmp(1,1)
 4 0
 5 >>>cmp(1,2)
 6 -1
 7 >>>cmp(‘a‘,‘b‘)
 8 -1
 9 >>>cmp(‘abc‘,‘ab‘)
10 1
11 #因为‘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
时间: 2024-11-05 20:48:24

python-cmp()的使用的相关文章

Python cmp() 函数

描述 cmp(x,y) 函数用于比较2个对象,如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. 语法 以下是 cmp() 方法的语法:cmp( x, y ) 参数 x -- 数值表达式.y -- 数值表达式. 返回值 如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1. 实例 以下展示了使用 cmp() 方法的实例: #!/usr/bin/python print "cmp(80, 100

Python的内置方法,abs,all,any,basestring,bin,bool,bytearray,callable,chr,cmp,complex,divmod

Python的内置方法 abs(X):返回一个数的绝对值,X可以是一个整数,长整型,或者浮点数,如果X是一个复数,此方法返回此复数的绝对值(此复数与它的共轭复数的乘积的平方根) >>> abs(3+2j) 3.605551275463989 >>> abs(3-2j) 3.605551275463989 all(iterable):如果迭代器的所有元素都是true,或者空迭代器,则此方法返回true. any(iterable):迭代器只要有一个元素为false,或者空

[python学习篇][书籍学习][python standrad library][内建函数]之[all,any,basestring,isinstance,bin,bool,@classmethod,@staticmethod,cmp,enumerate

Python 解释器内置了一些函数,它们总是可用的.这里将它们按字母表顺序列出.     Built-in Functions     abs() divmod() input() open() staticmethod() all() enumerate() int() ord() str() any() eval() isinstance() pow() sum() basestring() execfile() issubclass() print() super() bin() file

浅谈python中的“ ==” 与“ is”、还有cmp

总之,比较内容相等使用 '==' 1.is" 是用来比较 a 和 b 是不是指向同一个内存单元,而"=="是用来比较 a 和 b指向的内存单元中的值是不是相等 2.python有一个叫小整数对象池的东西,python为了优化速度,会把[-5,256]之间的数据提前存放在小整数对象池中,程序中只要用的[-5,256]之间的数据不会再重新创建一份,都是指向对象池中的同一份数据,除了这个区间之外的整数数据,每次使用时系统都会重新申请一块内存,用来存储数据,这样之前的现象也就不奇怪了

python中的is、==和cmp()比较字符串

python 中的is.==和cmp(),比较字符串 经常写 shell 脚本知道,字符串判断可以用 =,!= 数字的判断是 -eq,-ne 等,但是 Python 确不是这样子地.所以作为慢慢要转换到用 Python 写脚本,这些基本的东西必须要掌握到骨子里! 在 Python 中比较字符串最好是使用简单逻辑操作符.例如,确定一个字符串是否和另外一个字符串匹配.正确的,你可以使用 is equal 或 == 操作符.你也可以使用例如 >= 或 < 来确定几个字符串的排列顺序. 从官方文档上看

Python函数-cmp()

cmp(x, y) 作用:         比较两个对象x和y,如果x < y ,返回负数:x == y, 返回0:x > y,返回正数. 注:在python2所有版本中都可用,但在python3中该函数已经被删掉. 1 >>> cmp(1, 2) 2 -1 3 >>> cmp(1, 1) 4 0 5 >>> cmp(5, 2) 6 1 7 >>> cmp('abcd','a') 8 1 9 #注意:这时候它会先比较第一个

python函数cmp()

cmp(x, y) 中文说明:比较两个对象x和y,如果x < y ,返回负数:x == y, 返回0:x > y,返回正数. 版本:该函数只有在python2中可用,而且在python2所有版本中都可用.但是在python3中该函数已经被删减掉,这点要特别注意. 代码示例: >>> cmp(1, 2) -1 >>> cmp(1, 1) 0 >>> cmp(5, 2) 1 >>> cmp('abcd','a') 1 #注意:

python中用cmp比较字典大小

字典长度 字典dic1,dic2 值,以及比较结果如下: 可知字典长度越长,字典就大. 疑问一:如果长度不一样呢,长度比较长但键值比较小,那个大呢? 答案:字典长度是第一比较项,长度长的就大 长度相等,比较键 疑问二:如果键不一样且比较小,但是valuse值大呢? 如图可知:如果键值不一样,则键值大的字典大. 3.长度相等,键值相等,则比较字典值 在长度相等的情况下:先比较第一个valuse,valuse值大的即大,相等则比较第二个valuse, 疑问三:如果值为字符串,字符串拥有的都相等,但是

Python 入门学习笔记

安装和运行 官网下载安装包https://www.python.org/downloads/mac-osx/下载完直接安装即可 运行打开 terminal,输入命令 python,进入 python 环境(类似输入 node 进入 node 环境) 退出 python 环境 exit() >>> python Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 12:01:12) [GCC 4.2.1 (Apple Inc. build 566

Python 面向对象class(2)

Python 面向对象 Python从设计之初就已经是一门面向对象的语言,正因为如此,在Python中创建一个类和对象是很容易的.本章节我们将详细介绍Python的面向对象编程. 如果你以前没有接触过面向对象的编程语言,那你可能需要先了解一些面向对象语言的一些基本特征,在头脑里头形成一个基本的面向对象的概念,这样有助于你更容易的学习Python的面向对象编程. 接下来我们先来简单的了解下面向对象的一些基本特征. 面向对象技术简介 类(Class): 用来描述具有相同的属性和方法的对象的集合.它定