Dan*_*man 15

因为return是一个声明.Lambdas 只能包含表达式.

  • 伟大的,也深入了解lambdas的本质 - 它们只能包含表达式 (2认同)

And*_*yko 7

Lambda 只能执行表达式并返回执行语句的结果,返回的是语句

考虑使用orand运算符来短路结果,以获得将由 lambda 返回的值的更大灵活性。请参阅下面的一些示例:

# return result of function f if bool(f(x)) == True otherwise return g(x)
lambda x: f(x) or g(x) 

# return result of function g if bool(f(x)) == True otherwise return f(x).
lambda x: f(x) and g(x) 
Run Code Online (Sandbox Code Playgroud)


Tig*_*kT3 6

lambda函数自动返回表达式.它们不能包含语句.return None是一个声明,因此无法奏效.None是一种表达,因此有效.