nums1 = [1, 2, 3]
nums2 = [1, 2, 3]
print(nums1 == nums2) # True
print(nums1 is nums2) # False
class Person(object):
def init(self, name, age, id):
self.name = name
self.age = age
self.id = id
def __eq__(self, other):
# print('eq方法被执行了')
# if self.name == other.name and self.age == other.age:
# return True
# return False
# return self.name == other.name and self.age == other.age
return self.id == other.id
p1 = Person(‘zhangsan’, 18, 90481)
p2 = Person(‘zhangsan’, 18, 90440)
p3 = Person(‘lisi’, 23, 90481)
print(p1 == p2) # True 调用 eq 魔法方法,获取到执行的结果 p1 == p2 p1.eq(p2)
print(p1 is p2) # False
print(p1 == p3) # p1 == p3 相当于 p1.eq(p3)