第二题有一点疑问
Topic source我觉得楼主想到调用默认参数好厉害 @log def now() 相当于 log(now) 而 @log() def now log() 相当于 decorator 所以是相当于 decorator(now) 并不是楼主想到的 手动在函数名前面加上了一个等于空值的字符串了吗?
- 1
我觉得楼主想到调用默认参数好厉害 @log def now() 相当于 log(now) 而 @log() def now log() 相当于 decorator 所以是相当于 decorator(now) 并不是楼主想到的 手动在函数名前面加上了一个等于空值的字符串了吗?
posroachips
第二题我原本想用调用默认参数的方法来做,下面是我写的装饰器的代码:
结果在定义原始函数的时候就不能用
@log
而必须用@log()
,要不会提示但是写
@log()
的话不就相当于我自己手动在函数名前面加上了一个等于空值的字符串了吗?我没想通为什么会这样。
(当然我这个函数定义的还是有点问题,如果不带 'excute' 的话函数名前面会出现一个空格)