装修问答

如何理解Python装饰器?

d = Demo()d;before"hello",等价于将函数hello重新赋值;after":# print ": print " return my_method############################ #class Demo(object):# def hello(self): @inject_check def hello(self)def inject_check(method),如上面代码中的hello函数加上@inject_check装饰器; method(*args) print ": print ": def my_method(*args);# hello=inject_check(hello)########################## class Demo(object);hello".hello()就是在函数上加个包装

威武的灰姑娘 42024-05-31