91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python?lambda函數怎么使用

發布時間:2022-06-29 09:50:05 來源:億速云 閱讀:169 作者:iii 欄目:開發技術

本篇內容介紹了“Python lambda函數怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!

一、lambda函數的定義   

lambda函數是Python中常用的內置函數,又稱為匿名函數。和普通函數相比,它只有函數體,省略了def和return,使得結構看起來更精簡。其基本調用語法如下:

lambda [var1 [,var2,…varn]]:expression

[var1 [,var2,…varn]]:形式參數,可以理解為入參,供表達式使用。

expression:函數表達式,其結果為lambda函數的返回值。

二、lambda函數實例

lambda函數和普通函數對比

定義一個lambda函數,將其賦值給一個變量,通過這個變量間接調用該函數。

fun_1 = lambda a,b: a*2+b*3
fun_1(1,2)

得到結果:

8

其中a,b是形式參數,即入參,供表達式a2+b3使用。

定義一個普通函數,語句如下:

def fun1(a,b):
    return a*2+b*3
fun1(1, 2)

得到結果:

8

可以發現應用lambda函數和普通函數的區別是少了def和return語句,且lambda函數直接寫在了一行,顯得更加精簡。不過在這里還沒有體現出匿名的屬性。

求一個一元二次方程

在上初中的時候,我們常常可以看到這樣一個題目:F(x)=ax^2+bx+c,求當a=2,b=3,c=4時,F(-1)、F(2)、F(5)的值。

方法一:應用lambda函數求解

F_x = lambda x:2*x**2+3*x+4
print(F_x(-1))
print(F_x(2))
print(F_x(5))

得到結果:

3
18
69

方法二:應用普通函數求解

def F_x(x):
    return 2*x**2+3*x+4
print(F_x(-1))
print(F_x(2))
print(F_x(5))

得到結果:

3
18
69

可以發現應用lambda函數和普通函數的求解結果是一樣的。

和高階函數filter配合使用

高階函數filter在后續文章中會詳細說明,它主要用來對列表進行過濾,挑選出列表中符合特定條件的值。比如想挑選出數列中3的倍數,語句如下:

cs_data = list([2, 8, 11, 12, 15, 6, 1, 7])
list(filter(lambda x:x%3==0, cs_data))

得到結果:

[12, 15, 6]

用常識也可以看出,最后的結果是挑選出了數列cs_data中3的倍數。和高階函數配合使用時,lambda函數的優點就進一步凸顯出來了。這時不需要提前定義一個普通函數,直接在高階函數內部將lambda函數的結果作為參數傳遞給高階函數即可,也真正做到了匿名。

和sorted函數配合使用

如果我們想對一個數列按數值的絕對值進行排列,可以應用sorted函數和lambda函數配合實現,語句如下:

my_list = [3, 5, -2, 10, -6, 8]
sorted(my_list, key=lambda x:abs(x))

得到結果:

[-2, 3, 5, -6, 8, 10]

可以發現得到的結果是按數值的絕對值排序后的數列。

“Python lambda函數怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

来安县| 吴川市| 宁晋县| 榆树市| 依安县| 康马县| 黄梅县| 福建省| 金沙县| 静安区| 洛南县| 怀安县| 全南县| 都匀市| 策勒县| 石景山区| 新密市| 兴安县| 元江| 泾源县| 沙雅县| 于田县| 忻城县| 惠东县| 依安县| 白沙| 仪陇县| 邻水| 开化县| 门源| 广汉市| 吉安县| 襄汾县| 海南省| 土默特右旗| 平凉市| 邹城市| 彩票| 祁东县| 舒城县| 宁陵县|