Map in Python :
- Map is used to compute a function for different values ‘in a single line of code ‘ .
- It takes two arguments, first is function name, that is defined already and the other is list, tuple or any other iterables .
- It is a way of applying same function for multiple numbers .
- It generates a map object at a particular location .
- It works fast when we call an already defined function on the elements
-
map(functionname, iterable)
Note: For more information refer to Python map() function.
for loop in Python :
- We use for loop to repeat a block of code for fixed number of times .
- Used when no results are required .
- To perform sequential traversal .
- Loop from 0 to n runs n+1 times .
-
for var in iterable : statements
Note: Here, var is the name given to iterating variable, iterable can be replaced by range() function and they can be of any data type . Statements are the step of actions to be performed .
Note: For more information, refer to Python For Loops.
Example:
Python
# function to square a given number def squareNum (a) : return a * a listt = [ 0 , - 1 , 3 , 4.5 , 99 , . 08 ] # using 'map' to call the function # 'squareNum' for all the elements # of 'listt' x = map (squareNum, listt) # map function returns a map # object at this particular # location print (x) # convert map to list print ( list (x)) # alternate way to square all # elements of 'listt' using # 'for loop' for i in listt : square = i * i print (square) |
Output:
<map object at 0x7fe413cf9b00> [0, 1, 9, 20.25, 9801, 0.0064] 0 1 9 20.25 9801 0.0064
Map vs for loop
- Comparing performance , map() wins! map() works way faster than for loop. Considering the same code above when run in this ide.
Using map():
using for loop:
- for loop can be with no content, no such concept exist in map() function.
Example:
Python
# we use the keyword 'pass'
# to simply get a for loop
# with no content
for
i
in
range
(
10
) :
pass
- There can be an
else
condition infor
loop which only runs when nobreak
statement is used. There is nothing like this inmap
.Example :
Python
# for loop with else condition
for
i
in
range
(
10
) :
print
(i)
else
:
print
(
"Finished !"
)
Output :
0 1 2 3 4 5 6 7 8 9 Finished !
- for loop can exit before too. We can do that using
break
statement. Exiting before expected is not possible in map. - map generates a map object, for loop does not return anything.
- syntax of map and for loop are completely different.
- for loop is for executing the same block of code for a fixed number of times, the map also does that but in a single line of code.
Let us see the differences in a tabular form -:
Map() | forloop | |
1. | The map() function executes a specified function for each item in an iterable. | The for loop is used for iterating over a sequence. |
2. |
Its syntax is -: map(function, iterables) |
It is used by using for keyword. |
3. | In this, the item is sent to the function as a parameter. | It is used to execute a set of statements, once for each item in a list, tuple, set etc. |
4. | It takes two parameters function and iterables. |
Its syntax is -: for var in iterable : |