In Python, anonymous function means that a function is without a name. As we already know that def keyword is used to define the normal functions and the lambda keyword is used to create anonymous functions. It has the following syntax:
Syntax
lambda arguments : expression
- This function can have any number of arguments but only one expression, which is evaluated and returned.
- One is free to use lambda functions wherever function objects are required.
- You need to keep in your knowledge that lambda functions are syntactically restricted to a single expression.
- It has various uses in particular fields of programming besides other types of expressions in functions.
Example #1:
# Python program to demonstrate # lambda functions string ='GeeksforGeeks' # lambda returns a function object print(lambda string : string) |
Output
<function <lambda> at 0x7f268eb16f28>
In this above example, the lambda is not being called by the print function but simply returning the function object and the memory location where it is stored.
So, to make the print to print the string first we need to call the lambda so that the string will get pass the print.
Example #2:
# Python program to demonstrate # lambda functions x ="GeeksforGeeks" # lambda gets pass to print (lambda x : print(x))(x) |
Output
GeeksforGeeks
Example #3: Difference between lambda and normal function call
# Python program to illustrate cube of a number # showing difference between def() and lambda(). def cube(y): return y*y*y; g = lambda x: x*x*x print(g(7)) print(cube(5)) |
Output
343 125
Example #4: The lambda function gets more helpful when used inside a function.
# Python program to demonstrate # lmabda functions def power(n): return lambda a : a ** n # base = lambda a : a**2 get # returned to base base = power(2) print("Now power is set to 2") # when calling base it gets # executed with already set with 2 print("8 powerof 2 = ", base(8)) # base = lambda a : a**5 get # returned to base base = power(5) print("Now power is set to 5") # when calling base it gets executed # with already set with newly 2 print("8 powerof 5 = ", base(8)) |
Output
Now power is set to 2 8 powerof 2 = 64 Now power is set to 5 8 powerof 5 = 32768
We can also replace list comprehension with Lamba by using a map() method, not only it is a fast but efficient too and let’s also see how to use lambda in the filter().
Example #5: filter() and map()
# Python program to demonstrate # lambda functions inside map() # and filter() a = [100, 2, 8, 60, 5, 4, 3, 31, 10, 11] # in filter either we use assignment or # conditional operator, the pass actual # parameter will get return filtered = filter (lambda x: x % 2 == 0, a) print(list(filtered)) # in map either we use assignment or # conditional operator, the result of # the value will get returned maped = map (lambda x: x % 2 == 0, a) print(list(maped)) |
Output
[100, 2, 8, 60, 4, 10] [True, True, True, True, False, True, False, False, True, False]
Attention geek! Strengthen your foundations with the Python Programming Foundation Course and learn the basics.
To begin with, your interview preparations Enhance your Data Structures concepts with the Python DS Course.
Recommended Posts:
- Ways to sort list of dictionaries by values in Python - Using lambda function
- Lambda and filter in Python Examples
- Map function and Lambda expression in Python to replace characters
- Python | Find the Number Occurring Odd Number of Times using Lambda expression and reduce function
- Intersection of two arrays in Python ( Lambda expression and filter function )
- Overuse of lambda expressions in Python
- Difference between List comprehension and Lambda in Python
- Python | Find fibonacci series upto n using lambda
- Python | sympy.Lambda() method
- Python Program to Sort the list according to the column using lambda
- Python Lambda with underscore as an argument
- Nested Lambda Function in Python
- Python lambda (Anonymous Functions) | filter, map, reduce
- Lambda expression in Python to rearrange positive and negative numbers
- Applying Lambda functions to Pandas Dataframe
- Important differences between Python 2.x and Python 3.x with examples
- Python | Set 4 (Dictionary, Keywords in Python)
- Python | Sort Python Dictionaries by Key or Value
- Python | Merge Python key values to list
- Reading Python File-Like Objects from C | Python
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.

