Lambda 函數的動畫演示
- 2020 年 3 月 4 日
- 筆記
有些讀者反映,lambda
函數不太會用,問能不能解釋一下。
比如,下面lambda
函數:
def max_len(*lists): return max(*lists, key=lambda v: len(v))
有以下疑惑:
- 參數
v
的取值? lambda
函數有返回值嗎?- 如果有,返回值是多少?
以上函數求出三個列表中,最長的那個列表:
r = max_len([1, 2, 3], [4, 5, 6, 7], [8]) print(f'更長的列表是{r}')
代碼完整執行過程,動畫演示如下:

結論:
- 參數v的取值為圖中最下
tuple
的一個元素。 lambda
函數返回值等於lambda v
冒號後表達式的返回值。