How to Filter List Elements in Python?

ItsMyCode |
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()
    # function that filters vowels
    from os import truncate
    
    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]

    26

    This website collects cookies to deliver better user experience

    How to Filter List Elements in Python?