Surcharger l’opérateur ==
Les opérateurs intégrés de Python sont pratiques, surtout pour comparer des instances d’une classe. Lors de la création de classes, les méthodes magiques permettent de modifier le comportement de ces opérateurs. Ici, vous allez surcharger l’opérateur == pour déterminer si deux instances de Computer sont égales.
Cet exercice fait partie du cours
Programmation orientée objet intermédiaire en Python
Instructions
- Définissez une méthode magique pour surcharger l’opérateur
==. - Comparez les attributs
device_iddeselfet deotherdans la méthode magique afin de déterminer si les deux instances sont égales. - Vérifiez si
pre_upgrade_computeretpost_upgrade_computersont égaux et affichez le résultat.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
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(____ == ____)