How to use Python filter()
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
filter()
takes an iterable and returns a filter object, which is another iterable, but without some of the original items.
You do so by returning True
or False
from the filtering function:
numbers = [1, 2, 3]
def isEven(n):
return n % 2 == 0
result = filter(isEven, numbers)
print(list(result)) # [2]
You can use a lambda function to make the code more concise:
numbers = [1, 2, 3]
result = filter(lambda n: n % 2 == 0, numbers)
print(list(result)) # [2]
→ 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