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

来源:互联网 发布:iphone备份短信到mac 编辑:程序博客网 时间:2024/05/21 22:47

http://blog.csdn.net/sushengmiyan/article/details/11332589
本文地
在python2中我们经常会使用cmp函数来比较一些东西,但是在python3中,你再来使用这个函数的时候,发现就报错了,提示找不到这个函数,这是为啥呢?嗯,新版的python已经舍弃之。
在python3中使用时报错信息如下:

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

提示找不到cmp函数了,那么在python3中该如何使用这个函数呢?
看python的帮助文档,在oprater这个模块中有了这么几个函数
[python] view plain copy
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)

这几个函数就是用来替换之前的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
原创粉丝点击