python __cmp__,cmd python3

  python __cmp__,cmd python3

  本文主要介绍python3cmp的实现,具有很好的参考价值。希望对大家有帮助。如有错误或不足之处,请不吝赐教。

  

目录

python3 cmp实现PY3__cmp__ mixin类cmp()函数实现注释python3使用cmp函数使用运算符模块报告错误

 

  

python3 cmp实现

 

  Python3移除了cmp()函数,但是提供了六个丰富的比较操作符。详情见此。

  Operator #首先导入Operator模块。

  Operator.gt(1,2) #表示大于。

  Operator.ge(1,2) #表示大于等于。

  Operator.eq(1,2) #表示相等。

  Operator.le(1,2) #表示小于等于(小于或等于)

  Operator.lt(1,2) #表示小于(小于)

  

PY3__cmp__ mixin类

 

  导入系统

  PY3=sys.version_info[0]=3

  如果PY3:

  def cmp(a,b):

  返回(a b) - (a b)

  Python3的mixin类支持__cmp__

  PY3级__cmp__:

  def __eq__(自己,其他):

  回归自我。__cmp__(其他)==0

  def __ne__(自己,其他):

  回归自我。__cmp__(其他)!=0

  def __gt__(自己,其他):

  回归自我。__cmp__(其他)0

  def __lt__(自己,其他):

  回归自我。__cmp__(其他)0

  def __ge__(自己,其他):

  回归自我。__cmp__(其他)=0

  def __le__(自己,其他):

  回归自我。__cmp__(其他)=0

  else:

  PY3级__cmp__:

  及格

  class your class(PY3 _ _ CMP _ _):

  自定义类,可以使用list.sort函数或sorted函数对其进行排序。

  def __init__(自己,姓名,年龄):

  self.name=name

  年龄=年龄

  def __cmp__(自己,其他):

  返回cmp(自身年龄,其他年龄)

  

cmp()函数实现的注解

 

  Bool只是int的一个子类,所以True和False可以理解为1和0的区别。

  如果第一个参数小于第二个参数,cmp返回负值,如果参数相等,则返回正值,否则可以看出,False-False==0,True-False==1和False-True==-1为cmp提供了正确的返回值。

  

python3 使用cmp函数报错

 

  python3中不再使用cmp函数来比较大小。

  

使用operator模块

 

  进口经营者

  Lt(a,b)相当于ab从第一个数字或字母(ASCII)开始的大小

  Le(a,b)等价于A=B。

  Eq(a,b)等价于a==b=B,字母完全一样。返回True,

  Ne(a,b)等价于A!=b

  Gt(a,b)等价于ab

  Ge(a,b)等价于a=B。

  该函数的返回值是布尔值。

  以上个人经验,希望给你一个参考,也希望你能支持盛行的IT软件开发工作室。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: