算是py語言的個特性功能吧. 其他js還沒接觸到有沒有這個功能
主要亮點: 在不修改現有函式的功能要求下,豐富現有函式功能.
def
f1():
print("f1 func")
deff2
(): print("f2 func")
deff3
(): print("f3 func")
deff4
(): print("f4 func")
deff5
(): print("f5 func")
...特別多
#!/usr/bin/env python
# coding=utf-8
defouter
(func):
definner
(): print("hello")
print("hello")
r= func()
print("end....")
return r
return inner
@outer
deff1
(): print("f1 fun")
f1()
print("-"*40)
@outer
deff2
(): print("f2 fun")
f2()
def
printhello
(): print("hell world")
deff1
(): printhello()
print("f1 func")
...
@outer
#!/usr/bin/env python
# coding=utf-8
defouter
(func):
# func = 原來的f1函式
# return lambda: 123
definner
(): print("hello")
print("hello")
r= func() # 執行原f1
print("end....")
return r # 還是原f1的返回值
return inner
@outer
deff1
(): print("f1 fun")
f1()
print("-"*40)
@outer
deff2
(): print("f2 fun")
f2()
裝飾器原理
裝飾器,原理 開放封閉原則 def outer func func 原來的f1函式 def inner args,kwargs args,kwargs裝飾器就這麼寫,可以應對多個引數 print ok1 r func args,kwargs r等於none print ok2 return r re...
python裝飾器原理 Python裝飾器原理
裝飾器 decorator 是物件導向設計模式的一種,這種模式的核心思想是在不改變原來核心業務邏輯 的情況下,對函式或類物件進行額外的修飾。python中的裝飾器由python直譯器直接支援,其定義形式如下 decorator def core service 要理解上述 的含義,我們從自定義函式裝...
裝飾器原理分析
實驗一 usr local bin python3 deff name print name defh fun print fun.name defg print jack return fun return g return h f bob def fun1 print fun1 return f...