关于装饰器

什么是装饰器,或者说装饰器有什么用呢?一般来说,当我们想在一段代码前增加一段代码,而又不想对原代码进行修改时,于是我们就会用到装饰器。因为我们在对系统维护时,不鼓励对原代码进行修改,因为你可能对原代码不熟悉,一些小的改动可能会产生意想不到的后果。所以最好不要对原代码进行修改,但是我们又想对系统进行一些新的开发,所以装饰器就应运而生了,装饰器的意思好像是给一个人加了顶帽子,有装饰的意思。

装饰器是如何实现的呢?下面就装饰器实现新开发功能的基本框架。

先定义一个函数

def decoration1()

      def new_devop()  #新增的开发代码

           ..........

         return func()

    return new_devop

@decoration1

def func()  #原代码

      .......

func() #调用原代码,会自动执行新增的开发代码

通过这样的一段代码就将新增的开发代码置于原代码的前面,当每次调用原代码时,就会自动增加新增的开发代码的执行。

zero in your target,and go for it
原文地址:https://www.cnblogs.com/phoenix-mountain/p/12870460.html