在Python3中,如果我们自定义了一个类,当我们需要比较两个类对象的大小时,就需要我们自定义比较的方法,但是在Python2中可以很方便使用的__cmp__
方法在python3中已经被废弃了,需要我们单独实现别的比较方法。
== 和 !=
判断两个对象是否相等需要我们重载__eq__
或者__ne__
方法,可以只实现其中一种就实现判断==
和!=
。
class Person(object):
def __init__(self, name, age, height):
self.name = name
self.age = age
self.height = height
def __eq__(self, other):
print("%s.__eq__被调用" % self.name)
return True if self.age == other.age and self