python 高階函式

2022-05-15 08:22:49 字數 666 閱讀 9053

目錄函式的引數是另乙個函式,該函式接受的引數必須有函式,然後返回處理結果,函式可以當引數傳入這種思想就是面向函式式程式設計.

map可接受多個引數,第乙個引數是函式,其他引數必須是可迭代物件,該函式會一次取可迭代物件的元素用傳入的函式處理,將處理的結果返回一為個迭代器

reduce將乙個函式作用在乙個序列上,這個函式必須有兩個引數,處理過程為,第一次取序列的前兩個元素,傳入函式,得到處理結果,以後每次用上一次處理得到的結果為第乙個引數,序列的下乙個元素為第二個引數,進行處理,重複步驟,最終只返回乙個結果.

filter和map類似,接受兩個引數,乙個函式,乙個序列,一次從序列中取乙個元素用函式處理,函式結果返回true或false,保留結果為true的元素,最後返回所有結果為true的元素的迭代器(不返回處理結果)

sorted用於排序,該函式可接收3個引數,排序物件,key,reverse

key傳入乙個函式,控制排序規則,如key=abs,按絕對值排序

reverse控制順序或逆序,reverse=true,逆序

預設引數:設定預設引數後,呼叫該函式時如果不傳引數,會使用預設引數,本質還是同乙個函式

partial功能:將函式的引數固定,生成新的函式,每次呼叫新生成的函式

new_int=partial(int,base=2)

python 函式高階 python 函式高階

形參角度 萬能引數 動態接收位置引數 args 動態接收關鍵字引數 kwargs 的魔性用法 函式定義時 代表聚合。他將所有的位置引數 聚合成乙個元組,賦值給了args 函式定義時 將所有的關鍵字引數聚合成乙個字典中,將這個字典賦給了 kwargs 和 在函式的呼叫時 代表打散 僅限關鍵字引數 de...

Python高階 函式高階

閉包 closure 常規函式中可以在函式的引數中新增引數的預設值來簡化函式的操作,偏函式也可以做到這一點,而且會更加的方便管理函式的操作。通過內建模組functools的partial進行定義和處理 語法結構 新函式名稱 functools.partial 函式名稱,預設賦值引數 例如 全域性函式...

python 函式 高階函式

filter 函式是 python 內建的另乙個有用的高階函式,filter 函式接收乙個函式 f 和乙個list,這個函式 f 的作用是對每個元素進行判斷,返回 true或 false,filter 根據判斷結果自動過濾掉不符合條件的元素,返回由符合條件元素組成的新list。例如判斷奇偶數 def...