Перегрузка оператора +
Операторы сравнения — не единственные операторы, поддающиеся перегрузке. Классы в Python могут реализовывать собственное поведение для арифметических операторов, таких как + и -. В этом упражнении вы попрактикуетесь в перегрузке оператора + для класса Storage.
Это упражнение является частью курса
Объектно-ориентированное программирование на Python: средний уровень
Инструкции к упражнению
- Определите магический метод для перегрузки оператора
+в классеStorage. - Создайте новый объект
Storageс именемtotal_storage, у которогоcapacityравен суммеcapacityобоих объектов. - Сложите объекты
onboard_storageиexternal_drive, чтобы получить объектtotal_storage, и выведите значение егоcapacity.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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.____)