标签:ret wrapper 名称 **kwargs UNC after lse color 格式
在不改变函数调用方式(不改变原函数)的基础上在函数的前,后添加功能
def timmer(func): def inner(*args,**kwargs): set = func(*args,**kwargs) return set return inner # 传内部函数的名称,不能加括号 @timmer # @装饰器函数名 # func = timmer(func) def func(*args,**kwargs): # 被装饰器函数 time.sleep(0.01) print(‘大家好‘) ret=func() print(ret)
def outer(flag): def one(func): def two(*args,**kwargs): if flag: print(‘‘‘执行之前‘‘‘) ret= func(*args,**kwargs) if flag: print(‘‘‘执行之后‘‘) return ret return two return one @outer(False) def func(): print(111) func()
def wrapper1(func): def inner(): print(‘wrapper1 ,before func‘) func() print(‘wrapper1 ,after func‘) return inner def wrapper2(func): def inner(): print(‘wrapper2 ,before func‘) func() print(‘wrapper2 ,after func‘) return inner @wrapper2 @wrapper1 def f(): print(‘in f‘) f()
标签:ret wrapper 名称 **kwargs UNC after lse color 格式
原文地址:https://www.cnblogs.com/iswuyi/p/10660760.html