Začněte nyníZačněte zdarma

Přetížení operátoru +

Přetěžovat lze nejen operátory porovnání. Třídy v Pythonu mohou definovat vlastní chování i pro aritmetické operátory, jako jsou + a -. V tomto příkladu si procvičíš přetížení operátoru + pro třídu Storage.

Toto cvičení je součástí kurzu

Intermediate Object-Oriented Programming in Python

Zobrazit kurz

Pokyny k cvičení

  • Definuj magickou metodu pro přetížení operátoru + ve třídě Storage.
  • Vytvoř nový objekt Storage s názvem total_storage, jehož capacity se bude rovnat součtu capacity obou objektů.
  • Sečti objekty onboard_storage a external_drive, výsledek ulož do total_storage a vypiš hodnotu capacity objektu total_storage.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

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.____)
  
Upravit a spustit kód