lambda 函數是一種快速定義單行的最小函數,能夠用在任何須要函數的地方
常規版本:
lambda版本:
r = lambda x,y:x*y
print r(2,3)
格式:
lambda 參數列表:return [表達式] 變量
因爲lambda返回的是函數對象(構建的是一個函數對象),因此須要定義一個變量去接收
匿名函數優勢:
- 使用Python寫一些腳本時,使用lambda能夠省去定義函數的過程,讓代碼更加精簡。
- 對於一些抽象的,不會被別的地方再重複使用的函數,有時候函數起個名字也是個難題,使用lambda不須要考慮命名的問題
- 使用lambda在某些時候而後代碼更容易理解
搭配reduce的應用
reduce(fun,list)
reduce依次把list中的數字賦值給fun進行計算
注意fun必須是連個數字間的運算,list必須是整型數字
例:求1到100的累加
reduce (lambda x,y:x + y,xrange(1,101)