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

return f(x) 这个什么意思,print 已经把函数名打印出来了

def log1(f):

    def fn(x):

        print 'call ' + f.__name__ + '() log'

        return f(x)

    return fn


正在回答

3 回答

你不return f(x),请问你原来的函数执行了吗?这个本质就是为了增强原来函数的功能,所以在最后还是要执行原来的函数

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

装饰器的目的是在原函数上添加新功能,他并非修改函数的返回值。return fn 实际上最终是return f(x)即返回原函数。print 只是完成了装饰器的功能而已,原函数的功能不能丢啊。

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

这样才能执行f(x)

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

举报

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

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

进入课程

return f(x) 这个什么意思,print 已经把函数名打印出来了

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

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

帮助反馈 APP下载

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

公众号

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