Python之高階函式

2021-08-18 21:04:10 字數 1892 閱讀 8692

一、什麼是高階函式

函式作為實參傳遞給函式的或者函式名為返回值的函式稱為高階函式。

1)實參傳遞給函式

2)函式名為返回值

二、系統內建的高階函式

1、map函式:

至少需要兩個引數,第乙個引數是函式名,第二個引數是序列(str,list,tuple);

map功能:把序列中的每乙個元素作為引數,傳給函式進行處理

例子:求數的平方

函式:

至少需要兩個引數,第乙個引數是函式名

<

注意,函式名必須傳遞兩個引數

>

,第二個引數是序列(

str,list,tuple);

reduce功能:把序列中的前兩個引數傳給函式進行處理

例子:求和

3、filter函式:

至少需要兩個引數,第乙個引數是函式名注意,函式的返回值必須是true或false>,第二個引數是序列(str,list,tuple);

filter功能:把序列中執行函式的返回值為true的保留,為false丟棄

例子:1)求偶數

2)求質數

三、應用

1、型別轉換:轉換為指定型別

2、名稱規範:首字母大寫

3、階乘:求n個數的乘積

4、刪除1~100以內的質數

四、sorted函式

1、按字母順序正序排序;

mp比較條件後面跟函式的要求

1)函式需要傳遞兩個引數

2)函式返回值為1,-1或0

2、1~100的數隨機出現;正序排序和倒序排序

五、匿名函式

匿名函式格式:lambda 形式引數:返回值

例子:

1)階乘和求偶數

2)形式引數、預設引數、可變引數、關鍵字引數

3)用列表形式

顯示**最高的商品名稱

顯示商品數量最少的商品名稱和數量

4)用字典形式

顯示**最高的商品名稱

顯示商品數量最少的商品名稱和數量

5)移動陣列中的0;這裡牽扯到預設排序先0,後1,所以if後面要x == 0 才可以將0排至末尾

Python之高階函式

做過swift開發的童鞋都知道,在swift中有許多的高階函式 map,filter,reduce,zip等 這些在開發中讓我們節省大量 python中同樣有許多的內建函式,但是這裡也只介紹幾個常用的高階函式 根據提供的函式對指定序列做對映,並返回對映後的序列 map function,iterab...

python之高階函式

函式程式設計及其優勢 無 不修改狀態,表示式形式,專注與計算,接近自然語言。便於 熱公升級,無狀態不用考慮併發過程中的資源搶占及鎖問題。函式也是物件,也可以賦值給變數,當然函式的引數也可以為另一函式。map 是 python 內建的高階函式,它接收乙個函式 f 和乙個 list,並通過把函式 f 依...

python之高階函式

abs與abs 的區別 abs 返回值 abs 返回整個函式 求絕對值 print 求出來的絕對值為 abs 11 函式本身可以賦值給變數,變數也可以指向函式 呼叫函式來求絕對值 f abs print 求出來的絕對值為 f 10 傳遞的函式包括函式名 def fun x,y,f return f ...