CommencerCommencer gratuitement

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

Afficher le cours

Instructions

  • Définissez une méthode magique pour surcharger l’opérateur ==.
  • Comparez les attributs device_id de self et de other dans la méthode magique 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 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(____ == ____)
Modifier et exécuter le code