Перегрузка оператора ==
Встроенные операторы Python очень удобны, особенно при сравнении экземпляров класса. При разработке классов магические методы позволяют изменить поведение этих операторов. В этом упражнении вы перегрузите оператор ==, чтобы определить, равны ли два экземпляра класса Computer.
Это упражнение является частью курса
Объектно-ориентированное программирование на Python: средний уровень
Инструкции к упражнению
- Определите магический метод для перегрузки оператора
==. - Сравните атрибуты
device_idобъектовselfиotherвнутри магического метода, чтобы определить, равны ли два экземпляра. - Проверьте, равны ли
pre_upgrade_computerиpost_upgrade_computer, и выведите результат на экран.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
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(____ == ____)