python sys库,python sys用法

  python sys库,python sys用法

  现在,我们使用两个代码来比较添加换行,然后比较函数打印的结果。

  新文件名:Testword

  不要安装代码包装装饰器

  #编码=utf-8

  从functools导入包装

  efmy_decorator(func):

  EFwrapper(*Args,**kwargs)):

  ""解码器" "

  打印(装饰功能)

  returnfunc(*Args,**kwargs)))))))))return func(* Args,* * kwargs))

  返回包装

  @my_decorator

  定义测试() :

  ""测试世界" "

  测试功能)。

  打印(测试。_ _ name _,test。__doc__))

  打印结果:

  浏览器解码器

  [0.1秒内完成]

  在放入代码包装函数之后

  从functools导入包装

  efmy_decorator(func):

  @wraps(func)

  EFwrapper(*Args,**kwargs)):

  ""解码器" "

  打印(装饰功能)

  returnfunc(*Args,**kwargs)))))))))return func(* Args,* * kwargs))

  返回包装

  @my_decorator

  定义测试() :

  ""测试世界" "

  测试功能)。

  打印(测试。_ _ name _,test。__doc__))

  打印结果:

  测试测试字

  [0.1秒内完成]

  总结:

  因为用装饰器装饰一个函数的时候,这个函数本身已经是一个新函数了;也就是说,函数的名称和属性已经更改。所以python的functools模块提供了wraps装饰函数,这样在使用装饰时,原函数不会改变其函数名和属性。

  所以建议在装修者的制作中加入包装器,避免装修者造成的装修功能异常。

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

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