Встречается на собеседованиях • сегодня
В чем разница между _ и __
В Python символы _ и __ используются для обозначения приватности атрибутов и методов, но с разной степенью строгости:
- Одиночное подчеркивание (
_)- Условно приватный атрибут/метод (соглашение, а не строгая защита).
- Не импортируется при
from module import *. - Пример:
python
class MyClass: def _internal_method(self): print("Это внутренний метод")
- Двойное подчеркивание (
__)- Запускает механизм name mangling (искажение имени), чтобы избежать конфликтов в подклассах.
- Имя преобразуется в
_ИмяКласса__атрибут. - Пример:
Вызовpython
class MyClass: def __private_method(self): print("Это приватный метод")obj.__private_method()вызовет ошибку, но доступ возможен черезobj._MyClass__private_method().
Итог: _ — соглашение для "внутреннего" использования, __ — техническая защита от переопределения.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы