帮个忙。似乎找不到装修工来处理继承问题。把它分解为我的scratch工作区中最简单的一个小例子。似乎还是不能让它工作。
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
哎呀,没有定义“decor”这个名字。
好吧,那@bar.decor
怎么样?TypeError:必须以bar实例作为第一个参数调用未绑定方法“decor”(改为get function instance)
好吧,那@self.decor
怎么样?未定义名称“self”。
好吧,那@foo.decor
怎么样?!未定义名称“foo”。
aaaaaaaaaaarrrrggg。。。我做错什么了?
将
decor
定义为静态方法,并使用@bar.decor
格式:相关问题 更多 >
编程相关推荐