Trouple acessando atributos da superclasse python [duplicado]
Esta pergunta já tem uma resposta aqui:
O nome do método Python com sublinhado duplo é substituído? 2 respostasTenho duas classes que assumem o seguinte formato:
class Foo:
def __init__(self, foo):
self.__foo = foo
class Bar(Foo):
def bar(self):
print self.__foo
Quando tento invocar obar
em uma instância deBar
, Falha
b = Bar('foobar')
b.bar()
Resultado
Traceback (most recent call last):
File "foobar.py", line 14, in <module>
b.bar()
File "foobar.py", line 10, in bar
print self.__foo
AttributeError: Bar instance has no attribute '_Bar__foo'
Meu entendimento é que esse código deve funcionar com base emdoi de outro perguntas, por que não?