Напишите класс SomeClass с конструктором __init__ и методом __mul__
5 Просмотров
Задание:
Напишите класс SomeClass с конструктором __init__ и методом __mul__ с помощью которого произведите умножение объекта на число Ввод: obj=SomeClass(42) print(obj*100) Вывод: 4200. Язык программирования Python
Ответ на задание:
Класс SomeClass с умножением на число
class SomeClass: def __init__(self, value): self.value = value def __mul__(self, other): if isinstance(other, int): return self.value * other else: raise TypeError(f"Неподдерживаемый тип для умножения: {type(other)}") obj = SomeClass(42) print(obj * 100) # Выводит 4200
Объяснение:
__init__
: Конструктор класса принимает значение (value
) и инициализирует им атрибут объекта.__mul__
: Метод переопределяет оператор*
. Он проверяет, является ли второй операнд (other
) числом (int
). Если да, то метод умножает значение атрибутаvalue
наother
и возвращает результат. В противном случае, метод выводит ошибку о неподдерживаемом типе.