装饰器有参无参放一起,没想出来怎么做,抄的别人,虽做出来了,但是稀里糊涂不知道为什么
Topic source37: function1 is runing! 38: No parameter,return Run-time: 0.0 39: return function1() 40: Have a parameter 41: Action : function2() 42: function2 is runing! 43: Stop : function2() 44: return function2() 请按任意键继续. . .
你的代码已经说明了,这么清晰的逻辑为何不明白,对装饰器如果还没看顺眼就先这样表示 @log('parameters') def func(): pass 等价于func=log('parameters')(func)
@log def func(): pass 等价于 func=log(func)
当你再去调用新的func的时候log的参数就明了了,这样你的判断不就直接跳到对应的分支的吗,剩下就是装饰器的内部的逻辑了。
- 1
夏蝉live