Я пытаюсь использовать атрибут экземпляра в качестве параметра по умолчанию. К сожалению, питон, кажется, не признает «я» переменнуюПочему нельзя использовать атрибут экземпляра в качестве параметра по умолчанию?
class Example(object):
def __init__(self, name):
self.bar = ""
def foo(self, param=self.bar):
print self.bar
Почему не Python позволяет использовать себя в подписи метода? Кроме того, любые советы на гладком пути для достижения аналогичного результата без использования себя?
Поскольку экземпляр не существует к моменту создания метода, поэтому его атрибуты не существуют. – bereal