带有下划线的Python lambda作为参数?

标签 python lambda

下面的代码是做什么的?

a = lambda _:True

从我在交互式提示中阅读和测试的内容来看,它似乎是一个始终返回 True 的函数。

我理解正确吗?我希望了解为什么还要使用下划线 (_)。

最佳答案

_ 是变量名。试试看。 (这个变量名通常是一个被忽略的变量名。可以说是占位符。)

Python:

>>> l = lambda _: True
>>> l()
<lambda>() missing 1 required positional argument: '_'

>>> l("foo")
True

所以这个 lambda 确实需要一个参数。如果您想要一个始终返回 True 的 lambda 不带参数,请执行以下操作:

>>> m = lambda: True
>>> m()
True

关于带有下划线的Python lambda作为参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29767310/

相关文章:

c# - 转换表达式树

python - 将 RGB 图像转换为索引图像

python - Pandas:合并后 DataFrame 太长

python - Python Lambda打包和部署Bash

python - 尝试从 while 循环返回 python 中的正确整数?

java - 为什么我不能在 Java 8 lambda 表达式中抛出异常?

java - 为什么 OrElseGet 似乎没有被调用

python - 请参阅 django-rest-framework 下拉列表中的描述?

java - TypeAdapterFactory 的 Lambda 表达式

c++ - 如何编写连接两个函数的函数?