В Python специальные методы, которые начинаются и заканчиваются двойным подчеркиванием (например, init, str, len), называются магическими методами или dunder-методами. Они позволяют переопределять поведение встроенных операций и функций для пользовательских классов.
Имел ли опыт использования специальных методов, начинающихся и заканчивающихся двойными подчеркиваниями, в Python?
В Python специальные методы, которые начинаются и заканчиваются двойным подчеркиванием (например, init, str, len), называются магическими методами или dunder-методами.
Короткий ответ
Что ответить на собеседовании
Подробный разбор
Ответ с пояснениями
В Python специальные методы, которые начинаются и заканчиваются двойным подчеркиванием (например, __init__, __str__, __len__), называются магическими методами или dunder-методами. Они позволяют переопределять поведение встроенных операций и функций для пользовательских классов.
Пример использования __str__ для красивого вывода объекта:
class Person:
def __init__(self, name):
self.name = name
def __str__(self):
return f'Person: {self.name}'
p = Person('Иван')
print(p) # Выведет: Person: Иван
Использование таких методов позволяет интегрировать объекты с синтаксисом Python более естественно.