Встречается на собеседованиях • сегодня

Для чего нужны магические методы

Магические (dunder) методы в Python позволяют переопределять поведение объектов в различных контекстах. Они начинаются и заканчиваются двойным подчёркиванием (например, __init__, __str__, __add__).

Примеры использования:

  • __init__ — конструктор класса
  • __str__ — строковое представление объекта (print(obj))
  • __add__ — перегрузка оператора +
python
class Vector:
    def __init__(self, x, y):
        self.x = x
        self.y = y

    def __add__(self, other):
        return Vector(self.x + other.x, self.y + other.y)

    def __str__(self):
        return f"Vector({self.x}, {self.y})"

v1 = Vector(1, 2)
v2 = Vector(3, 4)
print(v1 + v2)  # Vector(4, 6)

Используются для элегантного расширения функциональности объектов.

Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

Следующий вопрос

Это единственный вопрос по вашему фильтру

как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы