#類對象的比較 class Person: def __init__(self,age,height): self.age=age self.height=height def __eq__(self, other):#比較兩個對象是否相等的函數 return self.age == other.age def __ne__(self, other):#比較兩個對象是否不相等的函數 return self.age != other.age def __gt__(self, other):#大於函數 return '大於函數' def __ge__(self, other):#大於等於 return '大於等於函數' def __lt__(self, other):#小於 return '小於函數' def __le__(self, other):#小於等於 return '小於等於函數' def __bool__(self):#判斷對象是真是假時要執行的函數 return True d1=Person(18,175) d2=Person(18,165) s=d1==d2 # 執行__eq__函數,返回值是__eq__函數的返回值 #如果沒有__eq__函數,就比較的是地址,所以返回False s=d1 != d2 # 執行__ne__函數,返回值是__ne__函數的返回值 s=d1 > d2 #執行__gt__函數,返回值是__gt__函數的返回值 s=d1 >= d2 #執行__ge__函數,返回值是__ge__函數的返回值 s=d1 < d2 #執行__lt__函數,返回值是__lt__函數的返回值 s=d1 <= d2 #執行__le__函數,返回值是__le__函數的返回值 print(s) if d1: #執行__bool__函數,返回值是__bool__函數的返回值 print('執行__bool__')