python之lambda函式使用

2021-10-03 10:16:18 字數 1766 閱讀 7595

語法: lambda引數:表示式(也可以看做 lambda 形式引數: 函式返回值)

lambda函式可以包含任意多的引數,但它只有乙個表示式。

# 計算平方:

a =lambda x: x*x

print

(a(3

))

結果為:

9
# 計算兩個數相乘

a =lambda x,y : x*y

print

(a(2,3

))

結果為:

6
(1)lambda x, y: xy;函式輸入是x和y,輸出是它們的積xy

(2)lambda:none;函式沒有輸入引數,輸出是none

(3)lambda *args: sum(args); 輸入是任意個數的引數,輸出是它們的和(隱性要求是輸入引數必須能夠進行加法運算)

(4)lambda **kwargs: 1;輸入是任意鍵值對引數,輸出是1

以輸入可變引數為例:

(1)引數是列表

y =

lambda

*args :

sum(args)

x =[1,

2,6,

5,8]

print

(y(x)

)

注意: 這裡與一般的自定義函式使用可變引數不同。

(2)多個引數直接輸入

y =

lambda

*args :

sum(args)

x =[1,

2,6,

5,8]

print

(y(1,2

,3,5

,4,6

))

結果為:

21
lambda函式+filter函式
my_list =[2

,3,4

,5,6

,7,8

]new_list =

list

(filter

(lambda a:

(a /3==

2),my_list)

)print

(new_list)

結果為:

[

6]

以map函式為例
my_list =[2

,3,4

,5,6

,7,8

]print

(map

(lambda a:

(a /3==

2),my_list)

)print

(list

(map

(lambda a:

(a /3==

2),my_list)

))

結果為:

<

mapobject at 0x0000022fd651c430

>

[false

,false

,false

,false

,true

,false

,false

]

map(), filter()函式返回的是乙個迭代器

python 之匿名函式 lambda

什麼是匿名函式?匿名函式就是不用def關鍵字,使用lambda關鍵字定義的乙個函式。匿名函式簡約而不簡單。匿名函式的格式 lambda paramters1,paramters2 expression 1.lambda是乙個表示式,而不是乙個語句 2.lambda 的主體是只有一行的簡單表示式,並不...

Python 七 之匿名函式lambda

一,lambda函式 lambda函式用於建立乙個匿名函式,函式名未和識別符號進行繫結。使用lambda函式可以返回一些簡單的運算結果。lambda函式格式如下 lambda 變數1,變數2.表示式 其中,變數列表用於表示式的計算。lambda屬於函式,因此變數列表後需要乙個冒號。通常把lambda...

Python3之匿名函式(lambda函式)

data.sort key lambda x x 0 匿名函式 使用方式 語法 lambda para1,para2,expression 舉例1 若要完成乙個實現兩數相加的函式,用def關鍵字很簡單,幾行就可以搞定,所以也許似乎沒必要單獨寫乙個函式來呼叫。我們可以定義匿名函式並賦值給a,a具有匿名...