匿名函數,直接理解就是沒有名稱的函數,的確是沒有名稱的函數。
lambda
匿名函數返回的是一個函數
>>> r = lambda u: u+4
>>> print r
<function <lambda> at 0x93a938>
一般用的場景是,爲了簡單方便,同時爲了靈活使用,速寫函數的作用,使代碼結構更簡潔,下面看看一般的用法
我定義了一個匿名冪函數,有n和m兩個變量,當調用函數時,只需要按順序給值,分號前邊是變量定義,都好隔開,分號後邊是邏輯表達式
>>> rr = lambda n,m:n**m
>>> rr(2,3)
8
還可以指定變量調用
>>> rr(m=2,n=3)
9
還可以直接默認參數
>>> rr = lambda n=2,m=3:n**m
>>> rr(3)
27