python 高階學習之python裝飾器小結

2022-09-28 08:57:08 字數 693 閱讀 5276

什麼是裝飾器?處理函式的函式,加乙個功能,但是不影響原來函式的內部結構生活中的例子:給手機加乙個外殼,外殼保護了手機

裝飾器有什麼用?增強函式的功能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 會在連線操作...