Python 装饰器

一. 什么是装饰器

装饰器: 本质上就是个python函数,(用来装饰其他函数)它可以让其他函数在不做任何代码变动的前提下,增加额外的功能,装饰器的返回值也是一个函数对象。

装饰器的应用场景:比如插入日志,性能测试,事务处理,缓存等等场景。装饰器是解决这类问题的绝佳设计,有了装饰器就可以抽离出大量与函数功能本身无关的雷同代码并继续重用;概括的讲,装饰器的作用就是为已经存在的函数或对象添加额外的功能。

原则:

  1. 不能修改被装饰函数的源代码

  2. 不能修改被装饰函数的调用方式

实现装饰器的基础认识:

  1. 函数即"变量"

  2. 高阶函数  满足下面条件之一

    a: 把一个函数名当作实参传给另外一个函数(在不修改被装饰函数源代码的情况下为其添加功能)

    b: 返回值中包含函数名(不修改函数的调用方式)

  3. 嵌套函数

高阶函数 + 嵌套函数 => 装饰器

posted @ 2019-02-14 10:34  mingetty  阅读(87)  评论(0)    收藏  举报