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

这一节完全不懂了

装饰器里边的讲解


正在回答

1 回答

装饰器。。。#主要原理:利用高阶函数,以覆盖的原理,使被调用函数功能被增强

如:

def f1(x):

      return x*x

def log(f):       #接受一个函数为参数    

      def fn(x):

            print 'call ' + f.__name__ + '()...'       #加强被调用函数功能的语句

            return f(x)    # 运行原来的函数,并返回值

     return fn            #返回自己内部的函数

f1=log(f1)    #原来的f1已被完全覆盖,功能被增强

以上可简写为:

def log(f):

      def fn(x):

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

            return f(x)

      return fn

@log

def f1(x):

      return x*x

#层层调用,利用最外层的return返回内一层的函数,直到最内层添加加强功能的语句


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

举报

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

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

进入课程

这一节完全不懂了

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

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

帮助反馈 APP下载

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

公众号

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