Parameter | Details |
---|---|
function | function for mapping (must take as many parameters as there are iterables) (positional-only) |
iterable | the function is applied to each element of the iterable (positional-only) |
*additional_iterables | see iterable, but as many as you like (optional, positional-only) |
Everything that can be done with map
can also be done with comprehensions
:
list(map(abs, [-1,-2,-3])) # [1, 2, 3]
[abs(i) for i in [-1,-2,-3]] # [1, 2, 3]
Though you would need zip
if you have multiple iterables:
import operator
alist = [1,2,3]
list(map(operator.add, alist, alist)) # [2, 4, 6]
[i + j for i, j in zip(alist, alist)] # [2, 4, 6]
List comprehensions are efficient and can be faster than map
in many cases, so test the times of both approaches if speed is important for you.