Можно ли получить доступ к атрибуту или методу класса, начинающемуся с двух подчёркиваний? Какие есть особенности?

В Python атрибуты или методы, начинающиеся и заканчивающиеся двойным подчеркиванием (например, init, str), называются "магическими" или "специальными" методами.

Короткий ответ

Что ответить на собеседовании

В Python атрибуты или методы, начинающиеся и заканчивающиеся двойным подчеркиванием (например, init, str), называются "магическими" или "специальными" методами. Они имеют особое значение для интерпретатора и позволяют переопределять поведение объектов, например, инициализацию, представление в виде строки, арифметические операции и др. Такие методы не предназначены для прямого вызова пользователем, а используются встроенными функциями и операторами.

Подробный разбор

Ответ с пояснениями

В Python атрибуты или методы, начинающиеся и заканчивающиеся двойным подчеркиванием (например, __init__, __str__), называются "магическими" или "специальными" методами. Они имеют особое значение для интерпретатора и позволяют переопределять поведение объектов, например, инициализацию, представление в виде строки, арифметические операции и др. Такие методы не предназначены для прямого вызова пользователем, а используются встроенными функциями и операторами.

Пример:

class MyClass:
    def __init__(self, value):
        self.value = value

    def __str__(self):
        return f"MyClass с value = {self.value}"

obj = MyClass(10)
print(obj)  # Вызовет __str__ автоматически

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее