Ctrl K
Python · Junior · Теория

Что такое магические, или dunder-методы, в Python? Для чего они нужны? Приведите несколько примеров.

~4 мин голосом

Как подойти

Проверяют, понимает ли кандидат, что dunder-методы — это способ встроить свой класс в синтаксис и встроенные функции Python (протоколы), и может ли он привести осмысленные примеры с нюансами вроде __str__/__repr__ и __eq__/__hash__.

Встречал этот вопрос на настоящем собесе?
Ответов0
Средний балл—
Сильных—
Тренировали0
Темы
Похожие вопросыВ сервисе есть функция def add_tag(tag, tags=[]), и после нескольких вызовов в результатах начинают появляться чужие теги. Что происходит и как это исправить? MiddleЧто происходит, когда вы переопределяете __eq__ у своего класса, и как это связано с __hash__? Как бы вы сделали объект, который можно безопасно класть в set и использовать как ключ словаря? SeniorЧем поверхностное копирование отличается от глубокого в Python? Когда эта разница имеет значение? JuniorВы переопределили __eq__ у класса Money, и при попытке положить объект в set получили TypeError: unhashable type. Почему так произошло и как правильно реализовать равенство и хеширование? MiddleРасскажите, как Python ищет атрибут при обращении obj.attr. Какое место в этом занимают дескрипторы и почему property работает именно так? Senior

Ответь голосом

Интервьюер задаст этот вопрос и послушает. Думай вслух, проси подсказку, если нужно. Закончил — пауза или «Я ответил», через минуту здесь балл и какие пункты закрыты.

Войти, чтобы ответить

Лучше в наушниках · ~4 мин