有时候我们需要比较两个对象。比如哪个对象大,哪个对象小。如果我们不告诉python如何比较,那么Python是不知道如何进行比较的。
下面提供实例

#__eq__(self,other):
#在使用==比较运算符比较两个对象是否相等的时候会调用这个方法。
#如果是相等,那么应该返回True,否则返回False。

#__ne__(self,other):
#在使用!=比较运算符来比较两个对象是否不相等的时候会调用这个方法。
#如果这两个对象不想等,那么应该返回True,否则返回False。

#__lt__(self,other):
#在使用<比较运算符来比比较两个对象大小的时候会调用这个方法。
#如果self<other,那么应该返回True,否则返回False。

#<=和>=的解决方案:
#以上讲了<、>、==以及!=的执行方法。
#没有讲<=和>=这两个运算符执行的方法,其实这两个方法是这样执行的,
#拿<=为例来讲,首先执行<判断,如果为False,那么会再执行==判断,
#如果都为False,那么就返回False。
class class(object):

def __init__(self,param1,param2):
self.param1=
self.param2 = param2

def __eq__(self,other):
if self.param1==other.param1 and self.param2==other.param2:
return True
else:
return False

def __ne__(self,other):
if self.param1!=other.param1 or self.param2!=other.param2:
return True
else:
return False

def __lt__(self,other):
if self.param1 < other.param1:
return True
else:
if self.param1==other.param1:
return True if self.param2<other.param2 else False
else:
return False

def __gt__(self,other):
if self.param1>other.param1:
return True