LoslegenKostenlos loslegen

Den Operator == überladen

Pythons eingebaute Operatoren sind praktisch, besonders beim Vergleichen von Instanzen einer Klasse. Beim Erstellen von Klassen kannst du Magic Methods verwenden, um die Funktionalität dieser Operatoren zu ändern. Hier überlädst du den Operator ==, um zu bestimmen, ob zwei Instanzen von Computer gleich sind.

Diese Übung ist Teil des Kurses

Fortgeschrittene objektorientierte Programmierung in Python

Kurs anzeigen

Anleitung zur Übung

  • Definiere eine Magic Method, um den Operator == zu überladen.
  • Vergleiche in der Magic Method die Attribute device_id von self und other, um festzustellen, ob die beiden Instanzen gleich sind.
  • Prüfe, ob pre_upgrade_computer und post_upgrade_computer gleich sind, und gib das Ergebnis aus.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

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(____ == ____)
Code bearbeiten und ausführen