Встречается на 1% собеседований по Python
Какие данные можно делать публичными, а какие должны оставаться приватными
В Python приватность данных определяется соглашениями, а не строгими ограничениями.
Публичные данные (public):
- Без подчёркиваний:
self.value– явно предназначены для использования извне - Документированный API класса/модуля
Защищённые (protected):
- С одним подчёркиванием:
self._internal_data– сигнал, что атрибут не предназначен для внешнего использования, но доступ возможен
Приватные (private):
- С двумя подчёркиваниями:
self.__secret– Python делает name mangling (_ClassName__secret), но доступ всё равно возможен - Данные, критичные для работы объекта (пароли, внутренние состояния)
Пример:
python
class BankAccount:
def __init__(self, balance, password):
self.balance = balance # публичный
self._last_transaction = None # защищённый
self.__password = password # приватныйВажно:
- Приватность в Python – договорённость, а не защита
- Для настоящей защиты используют свойства (
@property), замыкания или спец. библиотеки

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