重载 == 运算符
Python 内置运算符非常实用,尤其是在比较类的实例时。构建类时,可以使用魔术方法来改变这些运算符的功能。在本练习中,您将重载 == 运算符,以判断两个 Computer 实例是否相等。
本练习是课程的一部分
Python 面向对象编程进阶
练习说明
- 定义一个魔术方法来重载
==运算符。 - 在该方法中比较
self与other的device_id属性,以判断两个实例是否相等。 - 检查
pre_upgrade_computer与post_upgrade_computer是否相等,并打印结果。
交互式实操练习
通过完成这段示例代码来试试这个练习。
class Computer:
def __init__(self, device_id, storage):
self.device_id = device_id
self.storage = storage
# Overload the == operator using a magic method
def ____(self, other):
# Return a boolean based on the value of device_id
____ self.____ == other.____
pre_upgrade_computer = Computer("Y391Hky6", 256)
post_upgrade_computer = Computer("Y391Hky6", 1024)
# Create two instances of Computer, compare using ==
print(____ == ____)