Помоги парню. Не получается заставить декоратор работать с наследованием. Разбери это до самого простого маленького примера в моем рабочем пространстве. По-прежнему не могу заставить его работать.
class bar(object):
def __init__(self):
self.val = 4
def setVal(self,x):
self.val = x
def decor(self, func):
def increment(self, x):
return func( self, x ) + self.val
return increment
class foo(bar):
def __init__(self):
bar.__init__(self)
@decor
def add(self, x):
return x
Упс, название "декор" не определено.
Хорошо, а как же @bar.decor
? TypeError: несвязанный метод "decor" должен вызываться с экземпляром бара в качестве первого аргумента (вместо этого получен экземпляр функции)
Хорошо, а как же @self.decor
? Имя «Я» не определено.
Хорошо, а как же @foo.decor
?! Имя "foo" не определено.
AaaaAAaAaaaarrrrgggg ... Что я делаю не так?