python 内置装饰器,python装饰器--原来如此简单

  python 内置装饰器,python装饰器--原来如此简单

  装饰器的作用:在不改变原有功能代码的情况下,添加用户认证等附加功能。

  @wraps(view_func)的作用:不使用装饰器改变原函数的结构(如name,doc))))。

  如果不使用@ wraps decorator,__name__和__doc__的输出是什么?def decorator(func): this is decorator _ _ .* kwargs(3360( this is wrapper _ _ doc _ print this wrapper方法))return func (* args,* kwargs (regs) test。_ _ name _ _ (print (_ _ doc _:(,test。_ _)

  分析:

  返回对包装方法的引用。这意味着调用测试。__name__实际上是包装器。__name__,因为测试指向包装方法。这样,在注释方法名称时,就有可能得到装饰器的嵌入函数的名称和注释。

  from func toolsimportwrappsdefdecorator(func): 这是decorator _ _ doc _ @ wraps)用@ wraps decorator解决这个问题)KWARGS (3360(这是wrapper _ _ doc _ print This wrapper方法))返回func (* args,* kwargs)测试。_ _ name _ _ (print (_ _ doc _ _:(,test。__doc__

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: