Python装饰器
如果要增强某一函数的功能,但又不希望修改原函数的定义,这种在代码运行期间动态增加功能的方式,称之为“装饰器”(Decorator)。写代码需要遵循开放封闭原则,已经实现的功能代码不允许被修改,但可以被扩展。
def add_xx(haha):
print("add_qx装饰器执行之前,调用add_xx函数传参数haha")
print(haha)
def add_qx(func):
print("开始执行add_qx装饰器")
def wrarpp2():
print("执行了wrarpp2函数")
return func()
return wrarpp2
return add_qx
haha = "http://www.baidu.com"
@add_xx(haha) # 1.调用add_xx函数,将其返回值add_qx装饰text()
# 2.相当于text = add_qx(text) text 指向 wrapp2
def text():
print("正在执行text函数")
text() # text指向add_qx里面wrapp2函数
#在不改变源码的情况下可以增加参数