How to Filter List Elements in Python?

The filter() method filters the given sequence of elements with the help of a function that tests each element in the sequence to be true or not.

Syntax:

filter(function, sequence)

Parameters:

  • function: the function that tests if each element of a sequence true or not.
  • sequence: the sequence which needs to be filtered. It can be any iterable object such as sets, lists, tuples, or containers.

Returns: The method returns an iterator that is already filtered.

Example – Filter a Python List with filter()

def even(x):
    if x%2==0:
        return True
    else:
        return False

# creating a list in Python
mylist= [3,5,1,5,7,8,2,6]

# using filter function to find even numbers
filtered = filter(even, mylist)

print('The even numbers are:')
for s in filtered:
	print(s)

Output

The even numbers are:
8
2
6

Example – Python Filter List with Lambda

Alternatively, we can use a lambda function statement to create the function to pass it as an argument to the filter() method.

# creating a list in Python
mylist= [3,5,1,5,7,8,2,6]

#filter all the odd numbers using list Comprehension
result = [x for x in mylist if x%2!=0]
print('The odd numbers are ',list(result))


#filter all the even numbers using list Comprehension
result = [x for x in mylist if x%2==0]
print('The even numbers are ',list(result))

Output

The odd numbers are  [3, 5, 1, 5, 7]
The even numbers are  [8, 2, 6]

Example – Filter with List Comprehension

The best way to filter the list elements is using the list comprehension statement [x for x in list if condition]. The condition can be replaced with any function which can be used as a filtering condition.

# creating a list in Python
mylist= [3,5,1,5,7,8,2,6]

#filter all the odd numbers using lambda
result = filter(lambda x: x % 2 != 0, mylist)
print('The odd numbers are ',list(result))


#filter all the even numbers using lambda
result = filter(lambda x: x % 2 == 0, mylist)
print('The even numbers are ',list(result))

Output

The odd numbers are  [3, 5, 1, 5, 7]
The even numbers are  [8, 2, 6]


Leave a Reply

Your email address will not be published.

Sign Up for Our Newsletters

Get notified of the best deals on our WordPress themes.

You May Also Like
Python String Swapcase()

Python String swapcase()

Table of Contents Hide swapcase() Syntaxswapcase() Parametersswapcase() Return ValueExample: Python Program to change the case of a given string Python string swapcase() method is a built-in function that converts all…
View Post
Python Ord() A Step-By-Step Guide

Python ord(): A Step-By-Step Guide

Table of Contents Hide ord() Function in Python Example ord() vs chr() ord() Function ExamplesTypeError: ord() expected a character, but string of length 2 found. In Python ord() function accepts a single…
View Post
Python List Insert()

Python List insert()

Table of Contents Hide Syntax of List insert() insert() ParametersReturn Value from List insert()Example 1: Inserting an Element to the ListExample 2: Inserting an element at the start and end of…
View Post