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
冒号后表达式的返回值。