0
点赞
收藏
分享

微信扫一扫

魔法方法《七》比较操作__eq__、 __ne__、__lt__、__le__、__gt__、__ge__


一、背景

在编程中我们通常需要比对两个对象、或者两个对象的某一属性是否相等, 此时会用到下面魔法方法。
会根据比较运算符调用相应的魔法方法进行比较

__eq__
__ne__
__lt__
__le__
__gt__
__ge__

二、简单实例

我们要比对两个学生的年龄是否相等、或大、或小,符合比较规则True、不符合False

class Student:

def __init__(self, username, age, height):
self.username = username
self.age = age
self.height = height

def __eq__(self, other):
print('比较规则 相等 True')
return self.age == other.age

def __ne__(self, other):
print('比较规则 不相等')
return self.age != other.age

def __lt__(self, other):
print('比较规则 小于')
return self.age <= other.age

def __le__(self, other):
print('比较规则 小于或等于')
return self.age <= other.age

def __gt__(self, other):
print('比较规则 大于')
return self.age > other.age

def __ge__(self, other):
print('比较规则 大于等于')
return self.age > other.age

if __name__ == '__main__':
pen1 = Student("zhangsan", 18, 175)
pen2 = Student("lisi", 18, 175)
print(pen1 == pen2)
print(pen1 != pen2)
print(pen1 < pen2)
print(pen1 <= pen2)
print(pen1 > pen2)
print(pen1 >= pen2)


举报

相关推荐

0 条评论