Встречается на собеседованиях • сегодня
Зачем нужно __ в Python
Двойное подчеркивание (__) в Python используется для name mangling (искажения имен) — механизма, который изменяет имена атрибутов класса, чтобы избежать конфликтов имен в подклассах.
Пример:
python
class MyClass:
def __init__(self):
self.__private = 42 # Превращается в _MyClass__private
obj = MyClass()
print(obj.dict) # {'_MyClass__private': 42}
obj.__private # AttributeError
text
**Особенности:**
- Имя преобразуется в `_ИмяКласса__атрибут`.
- Не делает атрибут приватным (доступ через `_ИмяКласса__атрибут`).
- Используется для избежания коллизий в наследовании.
**Важно:** Одиночное `_` — соглашение для "protected", а `__` — именно для name mangling.
Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы