gpt4 book ai didi

Python:以 lambda 形式传递语句

转载 作者:IT老高 更新时间:2023-10-28 21:46:48 26 4
gpt4 key购买 nike

一个Python新手的问题,为什么这个语法无效:lambda: pass,而这个:def f(): pass是正确的?

感谢您的洞察力。

最佳答案

lambdas 只能包含 表达式 - 基本上,可以出现在赋值语句右侧的东西。 pass 不是一个表达式 - 它不会计算为一个值,并且 a = pass 永远是不合法的。

另一种思考方式是,由于lambdas隐式返回其body的结果,lambda:pass实际上等价于:

def f():
return pass

这没有意义。如果出于某种原因确实需要无操作 lambda,请改为使用 lambda: None

关于Python:以 lambda 形式传递语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12883088/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com