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

Как выглядят магические методы

Магические методы (dunder methods) — это специальные методы в Python, начинающиеся и заканчивающиеся двойным подчёркиванием (__). Они позволяют переопределять поведение объектов встроенных операций, таких как сложение, сравнение, инициализация и т.д.

Примеры:

python
class MyClass:
    def __init__(self, value):  # Конструктор
        self.value = value
text
def __add__(self, other):  # Перегрузка оператора +
    return MyClass(self.value + other.value)

def __str__(self):  # Преобразование в строку
    return f"MyClass({self.value})"

a = MyClass(5)
b = MyClass(10)
print(a + b) # Вызовет add, затем str

text

Основные группы магических методов:
1. Инициализация (`__init__`, `__new__`)
2. Арифметические операции (`__add__`, `__mul__`)
3. Сравнение (`__eq__`, `__lt__`)
4. Представление (`__str__`, `__repr__`)
5. Контейнеры (`__len__`, `__getitem__`)
6. Вызов объекта (`__call__`)

Магические методы вызываются автоматически Python при выполнении соответствующих операций.
Sophi
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
Попробовать бесплатноArrow

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

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

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