装饰器的语法以@开头,接着是装饰器函数的名字、可选参数。
紧跟装饰器声明的是被装饰的函数和被装饰的函数的可选参数,如下:
@decorator(dec_opt_args)
def func(func_args):
....
其实总体说起来,装饰器其实也就是一个函数,一个用来包装函数的函数,装饰器在函数声明完成的时候被调用,调用之后声明的函数被换成一个被装饰器装饰过后的函数。
如:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
|