DEV Community

Cover image for Lambda Function in Python
Mursal Furqan
Mursal Furqan

Posted on

Lambda Function in Python

Python 🐍 is no doubt, one of the coolest programming language ever created. And its uniqueness and features, are all a par. One of the most awesome feature of Python is: Lambda Function

LamWhat?

Lambda Function, aka. anonymous function. A lambda function is a small anonymous function. It can take any number of arguments, but can only have one expression.

Syntax

lambda arguments : expression
Enter fullscreen mode Exit fullscreen mode

The expression is executed and the result is returned:

For example

Add 10 to argument a, and return the result:

x = lambda a : a + 10
print(x(5))
Enter fullscreen mode Exit fullscreen mode

The best part of Lambda function is, it is not limited to a single argument only. Rather, it can take as many arguments as required. For example in the code snippet shared below, it summarizes argument a, b, and c and return the result:

x = lambda a, b, c : a + b + c
print(x(5, 6, 2))
Enter fullscreen mode Exit fullscreen mode

Why use Lambda Function

The power of lambda is better shown when you use them as an anonymous function inside another function.

Say you have a function definition that takes one argument, and that argument will be multiplied with an unknown number:

def myfunc(n):
  return lambda a : a * n
Enter fullscreen mode Exit fullscreen mode

Use that function definition to make a function that always doubles the number you send in:

def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)

print(mydoubler(11))
Enter fullscreen mode Exit fullscreen mode

Or, use the same function definition to make multiple functions, in the same program:

def myfunc(n):
  return lambda a : a * n

mydoubler = myfunc(2)
mytripler = myfunc(3)

print(mydoubler(11))
print(mytripler(11))
Enter fullscreen mode Exit fullscreen mode

Examples

Note: Use lambda functions when an anonymous function is required for a short period of time.

Discussion (1)

Collapse
aatmaj profile image
Aatmaj

That is a good one! Neat explaination too!

You might like my Learning Python course