We came so far in this tutorial series and reaching the end. This is the 19th part of the series Python. In this am gonna talk about Python Anonymous Function in details.
In addition to that, I’ll also give some useful explanations to give you a clear cut view. But, before going any further, I recommend you guys, kindly go through the previous chapter. It will help you in grasping the things more easily. So let’s explore it..
For getting the theme of Python, kindly go through my previous articles.Chapter 1 | Python Properties
Chapter 2 | Python VS Other Languages
Chapter 3 | Environment and Setups
Chapter 4 | Python Basics 1.1
Chapter 5 | Python Basics 1.2
Chapter 6 | Python Strings
Chapter 7 | Python Lists
Chapter 8 | Python Operators
Chapter 9 | Python Decision Making
Chapter 10 | Python Looping
Chapter 11 | Python Loop Control Statements
Chapter 12 | Python Tuples
Chapter 13 | Python Tuple Operations
Chapter 14| Python Built in Tuple Functions
Chapter 15 | Python Dictionary
Chapter 16 | Python Dictionary Operations
Chapter 17 | Python Function
Chapter 18 | Python Function Calling Arguments
Chapter 19 | Python Anonymous Function…
Chapter 20 | Python Built-in Anonymous Function
Python Anonymous FunctionAn anonymous function is a function which doesn’t require any name or we can say that it can be defined without using a def keyword, unlike normal function creation in the python. In python anonymous function is defined using ‘Lambda’ keyword, that’s why it is also called a Lambda function.
find_val = lambda x : x*x+2 print (find_val(2))
Why Anonymous Function ??Now, there might be a question blinking in your mind, what is the real use of lambda / anonymous function in Python, as we have already general functions available (using def keyword). Actually in python we do use anonymous function when we require a nameless for a short span of time.
Anonymous functions are actually quite useful. Python supports a style of programming called functional programming where you can pass functions to other functions to do some really cool stuff. The above argument may be sound unfamiliar, let me explain in short.
“We do use anonymous function as an argument to a higher order function.”Let’s take a close look at some example for more better understanding:
Example:A simple program of sorting out even number from a list, using the traditional function: defining function name by using def keyword. Take a look
def myfunc(x): return (x % 2 == 0) even_num = list(filter(myfunc, [1, 2, 3, 4, 5, 6, 7, 8, 9])) print (even_num)
[2, 4, 6, 8]>>>
Explanation:As you can observe it’s filtering the digits as per our function and respective operation. But we didn’t use anything specific. Now let’s achieve the same functionality using the anonymous method in python using lambda keyword. Take a look..
even_num = list(filter(lambda x: x % 2 == 0, [1, 2, 3, 4, 5, 6, 7, 8, 9])) print (even_num)
[2, 4, 6, 8]>>>
Explanation:This method will also produce the same result.
MotiveThe motive behind explaining the Python Anonymous Function is here to give you an insight. Insight about how easily you can achieve the same functionality using some different approach. Undoubtedly, the code will be better from time and space complexity as well.
- An anonymous function can not be directly call to the print, because unlike normal function lambda requires expression.
- It can take any number of the arguments but returns only one value in form of expression.
- Anonymous functions have their own local namespace.
- Anonymous functions can’t access variables other than those in their functioning parenthesis.
Guidelines from our Side
- Do as much as code you can.
- Code anything you want, the best way to learn.
- Don’t just study things, try to learn them.
- Work on your Concepts.
- Work on the fundamentals of any technology or stuff you want to learn.