Python装饰器实现在不改变原函数的作用下打印信息_decorator

这是利用decorator实现的功能

decorator是接受一个函数作为参数,并返回一个函数

@log写在函数定义处实现的功能是 nows = log(nows)

这里我写的@log('nihao') 相当于 nows = log('nihao')(nows) 这里写了没有使用到

 

首先执行log('nihao')这个函数 返回wrapp这个函数

然后在调用wrapp这个函数 参数是nows函数 返回APP函数

调用app函数 (*args,**kw)表示可以接受任意参数的调用

先打印begin game

然后调用函数nows 打印2016-02-01

然后打印stop game

 

     

                       

Python装饰器实现在不改变原函数的作用下打印信息_Python_02

 

 

 

 

 

 

我之前16line调用函数那里写的nows() python报错        

Python装饰器实现在不改变原函数的作用下打印信息_装饰器_03