什麼是裝飾器?處理函式的函式,加乙個功能,但是不影響原來函式的內部結構生活中的例子:給手機加乙個外殼,外殼保護了手機
裝飾器有什麼用?增強函式的功能pvxpx
裝飾器使用場景增加被裝飾函式的行為**復用
乙個函式接收另乙個函式作為引數,這種函式稱之為高階函式。
1.在python中,一切皆為物件,所以函式也是乙個物件,從而函式可以賦值給變數。
定義乙個add函式,函式的功能是實www.cppcns.com現兩個數相加
系統為函式分配了乙個記憶體位址:0x00000000021b3798
2.乙個函式可以作為另乙個函式的返回值
3.乙個函式可以巢狀定義在另乙個函式中
4.乙個函式可以作為另乙個函式的實參。
先來了解一下map函式
map函式是根據指定函式對指定序列做對映,可以有效提高程式執行效率。
看一下map函式的原始碼:map(func, *iterables)
map函式接受兩個引數:
func:指定函式函式
iterables:可迭代物件,乙個序列或者多個序列,即函式對應的實參
想要實現乙個功能,在不改變 test 函式內部結構的前提下,在前面加一句 「少壯不努力」
弄清楚了裝飾器的工作原理:
但這程式設計客棧樣的**是有缺陷:test 函式直接返回了函式名,這樣後面就不好呼叫了。
改 進:
python 高階學習之2
print hello hello mystring aa print mystring aa下劃線 在直譯器中有特別的含義,表示最後乙個表示式的值 a 22 traceback most recent call last file line 1,in nameerror name is not d...
python 高階學習之4
for item in e mail net surfing homework chat print item e mail net surfing homework chat for item in e mail net surfing homework chat print item e mai...
python 高階學習之10
s s spa oil spa oil s join ss ww 21 s ss ww 21 foo hello world foo helloworld 通過這種方法,你可以把長的字串分成幾部分來寫,而不用加反斜槓 如果把乙個普通字串和乙個unicode 字串做連線處理,python 會在連線操作...