CommencezCommencez gratuitement

Surcharger l'opérateur ==

Les opérateurs intégrés de Python sont pratiques, surtout pour comparer des instances d'une classe. Lorsqu'on crée des classes, on peut utiliser des méthodes magiques pour modifier le comportement de ces opérateurs. Ici, vous allez surcharger l'opérateur == afin de déterminer si deux instances de Computer sont égales.

Cette activité fait partie du cours

Programmation orientée objet intermédiaire en Python

Voir le cours

Instructions de l’exercice

  • Définissez une méthode magique pour surcharger l'opérateur ==.
  • Dans cette méthode, comparez les attributs device_id de self et de other afin de déterminer si les deux instances sont égales.
  • Vérifiez si pre_upgrade_computer et post_upgrade_computer sont égaux et affichez le résultat.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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(____ == ____)
Modifier et exécuter le code