python如何让类支持比较运算-创新互联

本文实例为大家分享了python类支持比较运算的具体代码,供大家参考,具体内容如下

成都创新互联主要从事成都做网站、成都网站设计、网页设计、企业做网站、公司建网站等业务。立足成都服务平舆,十载网站建设经验,价格优惠、服务专业,欢迎来电咨询建站服务:18982081108

案例:

  有时我们希望自定义的类,实例间可以使用比较运算符进行比较,我们自定义比较的行为。

  需求:

    有一个矩形的类,我们希望比较两个矩形的实例时,比较的是他们的面积

如何解决这个问题?

在类中重新定义比较运算符,所有的比较运算可以简化为两个基本的比较运算,小于和等于比较

单个类比较

#!/usr/bin/python3
 
from math import pi
 
 
class Circle(object):
  def __init__(self, radius):
    self.radius = radius
 
  def get_area(self):
    return round(pow(self.radius, 2) * pi, 2)
 
  # 重定义小于比较
  def __lt__(self, other):
    return self.get_area() < other.get_area()
 
  # 重定义等于比较
  def __eq__(self, other):
    return self.get_area() == other.get_area()
 
if __name__ == '__main__':
  c1 = Circle(3.0)
  c2 = Circle(5.0)
 
  print(c1 < c2)   # c1.__le__(c2)
  print(c1 == c2)   # c1.__eq__(c2)  

当前名称:python如何让类支持比较运算-创新互联
本文网址:http://bzwzjz.com/article/cooshi.html

其他资讯

Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号
友情链接: 重庆企业网站建设 品牌网站建设 成都网站建设公司 网站建设方案 营销型网站建设 成都网站建设推广 高端网站建设 网站建设方案 企业手机网站建设 成都网站制作 网站制作公司 成都网站制作 定制网站建设 成都定制网站建设 重庆手机网站建设 网站建设开发 网站制作 网站建设费用 网站制作公司 响应式网站建设 古蔺网站建设 成都网站建设