一.对装饰器的理解
装饰器:也是一个函数,这个函数的目的是为了装饰另一个函数用的嵌套函数和回调函数的结合.装饰器的返回值也是一个函数对象。
外部函数用来接收函数
内部函数用来接收参数
def zhuangshi(fun):
def inner(x,y):
print("************")
fun(x,y)
print("************")
return inner
#@zhaungshi
def sum(x,y):
print("两数之和:",x+y)
a=zhuangshi(sum) # inner
a(1,2)
#sum(1,2)
二. 解释什么是闭包?
在函数内部再定义一个函数,并且这个函数用到了外边函数的变量,那么将这个函数以及用到的一些变量称之为
闭包
三.函数装饰器的作用
装饰器本质上是一个 Python 函数,它可以在让其他函数在不需要做任何代码的变动的前提下增加额外的功能。装
饰器的返回值也是一个函数的对象,它经常用于有切面需求的场景。 比如:插入日志、性能测试、事务处理、缓存、
权限的校验等场景 有了装饰器就可以抽离出大量的与函数功能本身无关的雷同代码并发并继续使用。