class Test(): def __init__(self, func): self.func = func def __call__(self): print("........") return self.func() @Test def test(): return 'hahha' print(test()) # test是一个实例对象,test()相当于调用类里的__call__方法 # 这可以看做是对闭包装饰的一个理解,特别是func传入的时候,相当于实例化了一个func属性,指向了原test函数