标签:eva return lag 应用 turn 分离 函数 计算 func
1.# 带参数的装饰器
def f1(flag):
def f2(func):
def inner(*args,**kwargs):
if flag:
‘‘‘执行函数之前要做的‘‘‘
r=func(*args,**kwargs)
if flag:
‘‘‘执行函数之后要做的‘‘‘
return r
return inner
return f2
@f1(True)
def f3():
print(‘egon‘)
return (‘eva‘)
s=f3()
print(s)
2.#多个装饰器装饰一个函数
def qqxing(func):
def qqxing_inner(*args,**kwargs):
print(‘in qqxing:before‘)
ret = func(*args,**kwargs)
print(‘in qqxing:after‘)
return ret
return qqxing_inner
def pipixia(func):
def pipixia_inner(*args,**kwargs):
print(‘in pipixia:before‘)
ret = func(*args,**kwargs)
print(‘in pipixia:after‘)
return ret
return pipixia_inner
@qqxing
@pipixia
def dapangxie():
print("饿了么")
dapangxie()
#应用场景
#func
#1.计算func的执行时间 @timmer
#1.登录认证 #@auth
#@auth #先登录 在认证
#@timmer
#func
#解耦 尽量的让代码分离。小功能之间的分离
#解耦的目的 提高代码的重用性
python-day14--带参数的装饰器+多个装饰器装饰同一个函数
标签:eva return lag 应用 turn 分离 函数 计算 func
原文地址:http://www.cnblogs.com/liuwei0824/p/7251836.html