可以写一些像:
class Test(object):
def _decorator(self, foo):
foo()
@self._decorator
def bar(self):
pass
Run Code Online (Sandbox Code Playgroud)
这失败了:@self中的自我是未知的
我也尝试过:
@Test._decorator(self)
Run Code Online (Sandbox Code Playgroud)
也失败了:测试未知
我想暂时更改装饰器中的一些实例变量,然后在更改它们之前运行装饰方法.