python3中替换python2中cmp函数的新函数分析(lt、le、eq、ne、ge、gt)

转载 2015年11月20日 11:49:31

在python2中我们经常会使用cmp函数来比较一些东西,但是在python3中,你再来使用这个函数的时候,发现就报错了,提示找不到这个函数,这是为啥呢?嗯,新版的python已经舍弃之。

在python3中使用时报错信息如下:

[python] view plaincopy
  1. Syntax Error: if cmp(os.getcwd(), os.path.dirname(os.sys.argv[0])) <> 0:: Test.py, line 34055  

提示找不到cmp函数了,那么在python3中该如何使用这个函数呢?

看python的帮助文档,在oprater这个模块中有了这么几个函数

[python] view plaincopy
  1. operator.lt(a, b)   
  2. operator.le(a, b)   
  3. operator.eq(a, b)   
  4. operator.ne(a, b)   
  5. operator.ge(a, b)   
  6. operator.gt(a, b)   
  7. operator.__lt__(a, b)   
  8. operator.__le__(a, b)   
  9. operator.__eq__(a, b)   
  10. operator.__ne__(a, b)   
  11. operator.__ge__(a, b)   
  12. 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

函数的返回值不是布尔哦。这点需要注意,还是跟cmp一样返回的是数值哦。

Python3 操作符重载方法

Python3 操作符重载方法 操作符重载方法: 类(class)通过使用特殊名称的方法(len(self))来实现被特殊语法...
  • Rozol
  • Rozol
  • 2017年04月26日 01:48
  • 881

麻将胡牌算法

用数字代替麻将中的所有牌: 一万~九万    1~9 一筒~九筒    11~19 一条~九条    21~29 东、南、西、北、中、发、白    31~37 胡牌的种类:对对胡、十三幺和33332...

python3中替换python2中cmp函数的新函数

python 3.4.3 的版本中已经没有cmp函数,被operator模块代替,在交互模式下使用时,需要导入模块。 在没有导入模块情况下,会出现下面的情况: 提示找不到cmp函数了,...

python3.x和python2.x的translate与maketrans函数使用差异

下面让我们看一个简单的例子来说明字符串转换的过程: 2.X下的演示过程: import string #导入string模...
  • junloin
  • junloin
  • 2017年07月17日 12:56
  • 108

sorted()函数 在Python2.x 和 Python3.x 中有所不同

sorted(iterable[,cmp,[,key[,reverse=True]]]) 作用:Return a new sorted list from the items in iterab...

python2.x中函数在python3.x中的改动方法

一、pickle函数 python2.x中:fw=open(filename,'w')和fr=open(filename,'r'), python3.x中:fw=open(filename,'wb...
  • vfgbv
  • vfgbv
  • 2017年07月07日 13:40
  • 224

python2.x中函数在python3.x中的改动方法

一、pickle函数 python2.x中:fw=open(filename,'w')和fr=open(filename,'r'), python3.x中:fw=open(filename,'wb')...

Python3中的print函数以及与python2的比较

本文首先介绍在python3中print函数的应用,然后对比在pyhton2中的应用。

Python2中print函数用法

使用print输出各型的 字符串 整数 浮点数 出度及精度控制 strHello = 'Hello Python' print strHello #输出结果:Hello Python ...

Python2.x与3_.x版本区别

  • 2017年08月25日 09:45
  • 341KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python3中替换python2中cmp函数的新函数分析(lt、le、eq、ne、ge、gt)
举报原因:
原因补充:

(最多只允许输入30个字)