函数进阶之闭包函数和装饰器
Posted shiqizz
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了函数进阶之闭包函数和装饰器相关的知识,希望对你有一定的参考价值。
闭包函数
把函数A和变量x包在函数B内部,然后通过函数B的返回值返回除函数A对象
def B(x):
# x = 1
def A():
print(x)
pass
return A
装饰器
用来给函数加功能,他的本质也是函数
1.不改变被装饰函数的源代码
2.不改变被装饰函数的调用方式
def outter(func):
def wrapper(*args,**kwargs):
#逻辑
res = func(*args,**kwargs) # func是被装饰的函数
return res
return wrapper
@outter
def index():
pass
def sanceng(engine):
def outter(func):
def warpper(*args,**kwargs):
# 逻辑
res = func(*args,**kwargs) # func是被装饰的函数
return res
return warpper
return outter
@sanceng
def index():
pass
以上是关于函数进阶之闭包函数和装饰器的主要内容,如果未能解决你的问题,请参考以下文章