Вам нужно использовать 2 подчеркивания, чтобы активировать класс / атрибут munging
>>> class Test(object):
... __test = {}
...
>>> class Test2(Test):
... pass
...
>>> Test2.__test.update({1:2})
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: type object 'Test2' has no attribute '__test'
Из-за атрибута munging атрибут можно найти по адресу Test2._Test__test
вместо
Если вы хотите, чтобы все подклассы автоматически получали свой собственный атрибут __test
, вы можете использовать метакласс для Test