Anonymous functions are the function which are created without a name
In Python, small
anonymous functions can be created with the lambda keyword containing one
expression
They are syntactically restricted to a single expression so they are called as
lambda expression also.
It is used primarily to write very short functions
Lambda function has the following syntax
lambda arguments : expression
For example we have a function add() to add two values passed as arguments to it as
follows
General function
def add(x, y):
return x + y
print(add(5, 6)) # calling function, prints 11
The above function can be written in a single line using lambda expression
add = lambda x, y: x + y
print(add(5, 6)) # calling function, prints 11
lambda x, y: x + y
is the lambda function/expression. x, y are the
arguments passed to it. x + y
is the expression that is evaluated and automatically
returned.
So the lambda expression creates a function object and does not have a name. We are
assigning that to a name add and using the name add we are calling the lambda
function as add(5, 6)
More Examples
Example
1
Lambda functions can be directly called without a
print((lambda x, y: x + y)(5, 6)) # calling function, prints 11
Example 2
print((lambda x: x ** 2)(2)) # prints 4
print((lambda x: x ** 2)(3)) # prints 9
print((lambda x: x ** 2)(5)) # prints 25