python - python中lambda函数的返回类型是什么?

标签 python lambda return-type

当您在 Python 中创建 lambda 时,返回什么类型?例如。 type(lambda x: x+1) 返回

最佳答案

Lambda 几乎与定义常规函数一样。

在您的情况下,它等同于:

def _(x):
    return x+1

正因为如此,并且因为 Python 的动态类型特性,返回值的类型取决于函数的作用。

用不同的值调用函数可以返回不同的值:

In [2]: y = lambda x: x+1

In [3]: y(1)
Out[3]: 2

In [4]: type(y(1))
Out[4]: int

In [5]: y(1.0)
Out[5]: 2.0

In [6]: type(y(1.0))
Out[6]: float

当询问lambda 函数本身 的类型时,类型只是函数:

In [1]: type(lambda x: x+1)
Out[1]: function

关于python - python中lambda函数的返回类型是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54618556/

相关文章:

python - 为什么 OLS 回归的 `sklearn` 和 `statsmodels` 实现给出不同的 R^2?

Python 插件,如 Minecraft Bukkit

python - 如何向用户询问一系列数字并返回不包括最大数字的所有数字的总和?

java - 多个 lambda 方法引用

java - 在 Java 8 中将实例方法作为参数传递

c++ - 在 Eigen 3.1.0-alpha1 中返回稀疏矩阵

python - 如何在 Django 模型中按不同模型中的字段降序排序?

c# - 带有语句体的 lambda 表达式不能转换为表达式树(Lambda 和 Linq)

C:函数未返回正确的值

c++ - 在 C++ 中返回两个字符串