舉例說(shuō)明:
#outer1
def outer1(func):
def inner(*args,**kwargs):
print("認(rèn)證成功街图!")
result = func(*args,**kwargs)
print("日志添加成功")
return result
return inner
#outer2
def outer2(func):
def inner(*args,**kwargs):
print("一條歡迎信息澈圈。邑茄。蛋叼。")
result = func(*args,**kwargs)
print("一條歡送信息落包。部蛇。。")
return result
return inner
@outer1
@outer2
#f1
def f1(name,age):
print("%s 正在連接業(yè)務(wù)部門(mén)1數(shù)據(jù)接口......"%name)
# 調(diào)用方法
f1("jack",18)
執(zhí)行結(jié)果:
認(rèn)證成功咐蝇!
一條歡迎信息涯鲁。。有序。
jack 正在連接業(yè)務(wù)部門(mén)1數(shù)據(jù)接口......
一條歡送信息抹腿。。旭寿。
日志添加成功
解析:
實(shí)際上裝飾后的效果等價(jià)于f1 = outer1(outer2(f1))警绩,關(guān)于裝飾器的具體解釋可以參考這位大神的文章,本文的例子也是從中引用的许师。