蒹葭苍苍,白露为霜。
所谓伊人,在水一方。

Python - 装饰器 函数定义装饰器-49


03 函数定义装饰器

      前面讲解了装饰器的一些概念和装饰器会用到的函数的知识,接下来讲解装饰器的定义,有两种方式可以定义装饰器一种是通过函数定义,一种是通过类定义。

 

001函数定义装饰器

(1)装饰器定义

如何定义

装饰器名称本身是一个函数,定义时候类似函数一样定义

装饰器需要修饰另外一个函数,所以装饰器需要一个传入一个函数作为参数

装饰器内部再定义一个函数用于对传递进来的函数进行装饰的,定义一个函数wrapper(*args, **kwargs)——相当于任何函数任何参数都可以通配,函数wrapper()就是对传入装饰器的func函数进行修改或者封装

装饰器内部函数返回装饰后的结果

装饰器本身返回内部函数对象(因为没有括号,所以不是内部函数执行结果),函数p_decorator()返回的是函数的对象wrapper不是wrapper的结果

 

 

(2)装饰器应用:用到某个函数上面

有两种方式:一种是用@方式,一种是类似函数调用方式,建议用第一种

该装饰器需求是:在返回字符串外面加一个p标签

方式一:

 

  方式二:了解

 

 

(3)另一个例子:文本变大写

 

 

赞(0) 打赏
未经允许不得转载:酷居科技 » Python - 装饰器 函数定义装饰器-49

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

锦瑟无端五十弦,一弦一柱思华年

酷居科技联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏