lambda只是一個表達式,函數體比def簡單不少。函數
lambda的主體是一個表達式,而不是一個代碼塊。僅僅能在lambda表達式中封裝有限的邏輯進去。spa
lambda表達式是起到一個函數速寫的做用。容許在代碼內嵌入一個函數的定義。orm
以下例子:作用域
以下例子:it
定義了一個lambda表達式,求三個數的和。io
再看一個例子:變量
用lambda表達式求n的階乘。lambda
------------------------------im
lambda表達式也能夠用在def函數中。img
看例子:
這裏定義了一個action函數,返回了一個lambda表達式。其中lambda表達式獲取到了上層def做用域的變量名x的值。
a是action函數的返回值,a(22),便是調用了action返回的lambda表達式。
這裏也能夠把def直接寫成lambda形式。以下