In Python, sometimes we need to perform the operation on every element of the iterable to create a new iterable. To do this, the “for” loop is normally used in Python. But we can also perform this using the “map()” function. The “map()” function is used for mapping the iterable value based on the specified function. It creates a new iterator by executing the transformation function for each item/element.
This tutorial follows these outlines:
- What is the Python “map()” Function?
- Python “map()” Function Working
- Applying Function on Two Iterable Objects
- Applying Standard Function on Iterable
- Applying Lambda Function on Iterable
- Python “map()” Function With “if-else” Statement
What is the Python “map()” Function?
In Python, the “map()” function executes the particular function for each element in an iterable or sequence. We can pass the item to the “map()” function as a parameter.
Syntax
Parameters
In this syntax:
- function: This specifies the function to execute for each element/item.
- iterable: This specifies the collection, sequence, or iterator object.
Return Value
The “map()” function in Python retrieves the mapping object of the class map. We can use the “list()” or “set()” function to convert the mapping object into a list or sets of values.
Example 1: Python “map()” Function Working
In this example, we first declare the custom function. This function retrieved the square of the given parameter value. Next, the “map()” function applies the custom function to each iterator value of the tuple and retrieved map object. Lastly, the map object is converted into a set sequence using the “set()” function:
return x*x
num = (5, 3, 1, 2)
res = map(func, num)
print(res, '\n')
print(set(res))
The map object and sequence value have been returned successfully:
Example 2: Applying Function on Two Iterable Objects
Here, we apply the custom function on two iterable objects. First, we declared the custom function that accepts two parameters and retrieves the sum. Next, the “map()” function takes the function and two iterables as an argument to apply the function on two iterables. Lastly, the map object is converted into a list:
return x+y
num = [5, 3, 1, 2]
num1 = [9, 6, 5, 2]
res = map(func, num, num1)
print(res, '\n')
print(list(res))
The list value has been retrieved:
Example 3: Applying Standard Function on Iterable
Here, the map() function applies the inbuilt “len()” function on a given iterable and retrieves the map object. We used the “list()” function to convert the map object into a list that contains the length of all the string elements:
res = map(len, list1)
print(res, '\n')
print(list(res))
This code retrieves/shows the below output:
Example 4: Applying Lambda Function on Iterable
We can utilize the lambda function instead of separately declaring custom functions in the program. The lambda function is a one-line anonymous function. Here, we use the map() function to accept the lambda function and apply it to the given iterable sequence:
res = map(lambda x: x + x, num)
print(list(res))
The addition of the number has been derived:
Example 5: Python “map()” Function With “if-else” Statement
We can also customize our function with different condition statements, such as the “if-else” statement. Here, the custom function will multiply the iterable element with “2” if the element is even, otherwise the same element is printed. Lastly, the map() applies the function to iterable and converts it into a list using list():
if x % 2 == 0:
return x * 2
else:
return x
res = map(even, [10, 23, 34, 45, 55])
print(list(res))
This code will show this:
Conclusion
The “map()” function is utilized in Python to retrieve the mapping object by applying the particular function to a given iterable sequence. We can convert the mapped object into various sequences such as lists, sets, or tuples. This tutorial provided multiple examples of Python map() functions.