Пока у меня есть это решение, без переоценки __setattr __ < /code> при выполнении: < /p>
Код: Выделить всё
class Foo(object):
def __init__(self, a, host):
object.__setattr__(self, 'a', a)
object.__setattr__(self, 'b', b)
result = self.process(a)
for key, value in result.items():
object.__setattr__(self, key, value)
def __setattr__(self, name, value):
print(self.b) # Call to a function using self.b
object.__setattr__(self, name, value)
Код: Выделить всё
class Foo(object):
def __init__(self, a, b):
self.a = a
self.b = b
result = self.process(a)
for key, value in result.items():
setattr(self, key, value)
# override self.__setattr__ here
def aux(self, name, value):
print(self.b)
object.__setattr__(self, name, value)
Как можно было бы переопределить __setattr __ в конце __init __ , или, по крайней мере, иметь Pythonic, где __setattr __setttttr __settttttr __petttttttr __petttttttr> «/код» __petttttr> «/код» __pettttr __ или, по крайней мере, в том, где __setttttttttr __pettttr> или «код» __peTtttr. Конструктор?
Подробнее здесь: https://stackoverflow.com/questions/164 ... at-runtime