所以我在这里找出 C类实例的去向,即垃圾邮件。我们当然都知道,如果我们通过Instance从类中调用方法,则Instance即(自我)会自动传递。因此我想知道调用methodDec时self(C类的实例)去了哪里。这样我就可以使用垃圾邮件实例
class decorator:
def __init__(self, func):
self.func = func
def __call__(self, *args):
self.func(self,*args)
class C:
def method(*a):
print(*a)
methodDec = decorator(method)
spam=C()
spam.methodDec('x','y','z')
spam.method('x','y','z')
输出为
>>> <__main__.decorator object at 0x0120A148> x y z
<__main__.C object at 0x0120A208> x y z