带参数的装饰器
Flag = True def wrapper_out(flag): def wrapper(func): def inner(*args, **kwargs): if flag: print("装饰之前要做的事") ret = func(*args, **kwargs) print("装饰之后要做的事") return ret else: print("没有装饰") ret = func(*args, **kwargs) return ret return inner return wrapper @wrapper_out(Flag) def func(): print("函数被执行") return "返回值" ret = func() print(ret)

浙公网安备 33010602011771号