SobesLab логотип SobesLab

Ответ

Одинарное подчеркивание в начале имени – лишь соглашение, обозначающее “внутренний” атрибут или метод (на уровне языка это ничего не меняет). Двойное подчеркивание запускает механизм name mangling: имя атрибута вида __attr внутри класса будет спрятано под именем _ClassName__attr. Это усложняет доступ извне и в подклассах. Однако такие атрибуты всё ещё можно получить, зная их трансформированное имя.