装饰器有三好:简单,复用,效果好
最简单的装饰器–带参装饰器
def add_print(str):
def add_args(f):
def fun(*args, **kwargs):
print("我是新加的功能")
return f(*args, **kwargs)
return fun
print(f"带参数:{str}")
return add_args
@add_print("hello")
def fun():
print("我是原来函数的功能")
fun()
运行结果:
带参数:hello
我是新加的功能
我是原来函数的功能