关闭

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

标签: 函数python
925人阅读 评论(0) 收藏 举报
分类:

在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一样返回的是数值哦。

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:7348次
    • 积分:144
    • 等级:
    • 排名:千里之外
    • 原创:2篇
    • 转载:28篇
    • 译文:1篇
    • 评论:0条