我正在尝试学习纯函数式编程。但是这段代码让我感到困惑,尤其是第二行。我不明白值 2
是如何传递给变量 x
的。有人可以解释这种嵌套的 lambda
行为吗?
>>> square_func = lambda x: x**2
>>> function_product = lambda F, m: lambda x: F(x)*m
>>> square_func(2)
4
>>> function_product(square_func, 3)(2)
12
最佳答案
当调用外部 lambda 时,内部 lambda 会创建一个函数。外层 lambda 返回这个函数。然后使用参数 2
调用此函数。
关于python - 了解 python 中的嵌套 lambda 函数行为,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36391807/