📜  Python Lambda

📅  最后修改于: 2020-10-24 09:15:13             🧑  作者: Mango

Python Lambda函数

Python Lambda函数被称为不带名称的匿名函数。 Python允许我们不以标准方式声明函数,即,使用def关键字。而是使用lambda关键字声明匿名函数。但是,Lambda函数可以接受任意数量的参数,但是它们只能以表达式形式返回一个值。

匿名函数包含一小段代码。它模拟C和C++的内联函数,但它并不完全是内联函数。

下面给出了定义匿名函数的语法。

句法

lambda arguments: expression     

它可以接受任意数量的参数,并且只有一个表达式。当需要函数对象时,它很有用。

考虑下面的lambda函数示例。

例子1

# a is an argument and a+10 is an expression which got evaluated and returned.  
x = lambda a:a+10 
# Here we are printing the function object
print(x)
print("sum = ",x(20))

输出:

 at 0x0000019E285D16A8>
sum =  30

在上面的示例中,我们定义了lambda a:a + 10匿名函数,其中a是参数,而a + 10是表达式。给定的表达式将被求值并返回结果。上面的lambda函数与普通函数相同。

def x(a):
    return a+10
print(sum = x(10))

例子2

Lambda函数的多个参数

# a and b are the arguments and a*b is the expression which gets evaluated and returned.  
x = lambda a,b: a*b
print("mul = ", x(20,10))

Output:

mul =  200

Why use lambda function?

The main role of the lambda function is better described in the scenarios when we use them anonymously inside another function. In Python, the lambda function can be used as an argument to the higher-order functions which accepts other functions as arguments.

Consider the following example:

Example 1: