How to use Python map()
Python provides 3 useful global functions we can use to work with collections: map()
, filter()
and reduce()
.
Tip: sometimes list comprehensions make more sense and are generally considered more pythonic
map()
is used to run a function upon each item in an iterable item like a list, and create a new list with the same number of items, but the values of each item can be changed.
Example of map()
being used to double each item in a list:
numbers = [1, 2, 3]
def double(a):
return a * 2
result = map(double, numbers)
When the function is a one-liner, it’s common to use a lambda function:
numbers = [1, 2, 3]
double = lambda a : a * 2
result = map(double, numbers)
and even inline it:
numbers = [1, 2, 3]
result = map(lambda a : a * 2, numbers)
The original list is left untouched, and a new list with the updated values is returned by map()
.
The result is a map object, an iterable, and you will need to cast it to a list
to print its content:
print(list(result)) # [2, 4, 6]
→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
→ JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025