語法
lambda 引數 : 表示式
接受引數,執行表示式,返回結果:
示例
乙個lambda函式,把引數加10,然後返回結果:
x = lambda a : a +
10print(x
(5))
lambda函式可以接受任意數量的引數:
示例
乙個lambda函式,將引數a與引數b相乘,然後返回結果:
x = lambda a, b : a * b
print(x
(5,6
))
示例
乙個lambda函式,對引數a、b、c求和並返回:
x = lambda a, b, c : a + b + c
print(x
(5,6
,2))
為什麼使用lambda函式?
lambda的好處是讓**更簡潔優雅。
假設你有乙個函式,帶乙個引數,這個引數將與乙個未知數相乘:
def myfunc
(n):
return lambda a : a * n
上面的函式定義返回乙個lambda函式。
下面的示例使用這個函式定義建立了乙個函式,該函式把傳入的引數乘以2,返回結果:
示例
def myfunc
(n):
return lambda a : a * n
mydoubler =
myfunc(2
)print
(mydoubler(1
))
使用相同的函式定義再建立乙個函式,該函式把傳入的引數乘以3,返回結果:
示例
def myfunc
(n):
return lambda a : a * n
mytripler =
myfunc(3
)print
(mytripler(1
))
也可以使用相同的函式定義把建立的兩個函式放在同乙個程式中:
示例
def myfunc
(n):
return lambda a : a * n
mydoubler =
myfunc(2
)mytripler =
myfunc(3
)print
(mydoubler(1
))print
(mytripler(1
))
lambda函式通常是在短時間內需要匿名函式時使用。 python lambda匿名函式
lambda定義乙個匿名函式 lambda只是乙個表示式,函式體比def簡單很多,很多時候定義def,然後寫乙個函式太麻煩,這時候就可以用lambda定義乙個匿名函式。lambda的主體是乙個表示式,而不是乙個 塊。僅僅能在lambda表示式中封裝有限的邏輯進去。參考鏈結 lambda的特性 乙個語...
python lambda匿名函式
在學習python的過程中,lambda的語法時常會使人感到困惑,lambda是什麼,為什麼要使用lambda,是不是必須使用lambda?下面就上面的問題進行一下解答。1 lambda是什麼?看個例子 1 g lambda x x 1看一下執行的結果 g 1 2 g 2 3 當然,你也可以這樣使用...
Python lambda 匿名函式 詳解
python中用lambda關鍵字來表示匿名函式,冒號前的x xx表示函式引數,具體例子如下所示 list map lambda x x x,1 2,3 4,5 6,7 8,9 1,4,9,16,25,36,49,64,81 可以看出匿名函式lambda x x x x x times x x x ...