Skip to content

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]

→ Here's my latest YouTube video

→ Get my Python Handbook
→ Get my Python Handbook

→ 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

Bootcamp 2025

Join the waiting list