为了账号安全,请及时绑定邮箱和手机立即绑定

这里的@log这一行就等于那个def log(f)定义的吗?

def log(f):
   def fn(x):
       print 'call ' + f.__name__ + '()...'
       return f(x)
   return fn

正在回答

2 回答

@log等价于 f=log(f)#这里调用装饰器

@语法就是为了简化装饰器的调用~


0 回复 有任何疑惑可以回复我~

我理解的就是他先定义一个log(f)函数,而这个函数的功能就是打印出那一句话,使用@log就可以调用log函数来使用log函数定义的功能,且log函数定义之后,就可以使用@log来多次调用,避免每次都要写

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
python进阶
  • 参与学习       255532    人
  • 解答问题       3038    个

学习函数式、模块和面向对象编程,掌握Python高级程序设计

进入课程

这里的@log这一行就等于那个def log(f)定义的吗?

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号