为了账号安全,请及时绑定邮箱和手机立即绑定
关注
慕沐9422798

my_func = log('DEBUG')(my_func)为什么这里有两个括号?

原文里提到是属于高阶函数的调用,我的理解是给函数参数不是(x,y)这样一个括号然后逗号隔开吗?

2019-07-26 源自:python进阶 2-13 118 浏览 1 回答

最佳回答

2019-07-26

两个括号表示函数执行了两遍

 log('DEBUG')(my_func) 相当于先执行 log('DEBUG'),返回中间函数log_decorator,
 再执行log_decorator(my_func),返回装饰后的函数my_func


举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信