Python装饰器的使用
1、打开PythonIDLE,新建一个并保存test.py文件,在test.py中定义几个函数。代码如下:def fc1(): print ('fc1')def fc2(): print ('fc2')fc1()fc2()

3、下面我们改造一下fc1函数,给fc1函数传递一个参数,这样作用于fc1函数的装饰器decor函数,也要做相应的更改,完整代码如下;def decor(fun): def wrap(arg): print ('before') fun(arg) print ('after') return wrap@decordef fc1(arg): print ('fc1',arg)def fc2(): print ('fc2')fc1('testarg')fc2()
4、fc1参数传入的位置就是是decor函数内部的wrap函数参数。运行程序,可以看到我们传入的参数被正常的打印出来了

6、运行程序可以看到结果正常打印,我们也可以在before和after函数中传递参数,这是它们的参数也要在装饰器的wrap中传递。
