Python操作符重载
操作符重载:加号(+)即可用于数字相加,也可用于字符串连接就是一种重载,我们可以定义自己的重载,比如加号,其实是__add__方法
本质上调用一个方法
class Circle:
radius = 0
def __init__(self, radius):
self.radius = radius
def show(self):
print("我的半径是:" + str(self.radius))
def __add__(self, other):
return Circle(self.radius + other.radius)
def __sub__(self, other):
return Circle(self.radius - other.radius)
def __gt__(self, other):
if self.radius>other.radius:
return True
else:
return False
c1 = Circle(5)
c2 = Circle(10)
c3 = c1 + c2
c3.show()
c4=c2-c1
c4.show()
if c1>c2:
print("圆1大")
else:
print("圆2大")
其他运算符重载
def __str__(self):
return "半径是"+str(self.radius)+"的圆"
print(c1)