LoslegenKostenlos loslegen

Überladen von +

Vergleichsoperatoren sind nicht die einzigen Operatoren, die überladen werden können. Klassen in Python können benutzerdefinierte Funktionalität für arithmetische Operatoren wie + und - implementieren. In diesem Beispiel übst du das Überladen des Operators + für eine Storage-Klasse.

Diese Übung ist Teil des Kurses

Fortgeschrittene objektorientierte Programmierung in Python

Kurs anzeigen

Anleitung zur Übung

  • Definiere eine Magic-Methode, um den Operator + für die Klasse Storage zu überladen.
  • Erstelle ein neues Storage-Objekt namens total_storage mit einer capacity, die der kombinierten capacity beider Objekte entspricht.
  • Addiere die Objekte onboard_storage und external_drive, um ein total_storage-Objekt zu erzeugen, und gib die capacity von total_storage aus.

Interaktive Übung

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

class Storage:
  def __init__(self, capacity):
    self.capacity = capacity
  
  def ____(____, ____):  # Overload the + operator
    # Create a Storage object with the sum of capacity
    return ____(self.____ + other.____)

onboard_storage = Storage(128)
external_drive = Storage(64)

# Add the two Storage objects, show the total capacity
total_storage = ____ + ____
print(total_storage.____)
  
Code bearbeiten und ausführen