Skip to content
Related Articles

Related Articles

filter() in python

Improve Article
Save Article
  • Difficulty Level : Easy
  • Last Updated : 22 Apr, 2020
Improve Article
Save Article

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

syntax:

filter(function, sequence)
Parameters:
function: function that tests if each element of a 
sequence true or not.
sequence: sequence which needs to be filtered, it can 
be sets, lists, tuples, or containers of any iterators.
Returns:
returns an iterator that is already filtered.




# function that filters vowels
def fun(variable):
    letters = ['a', 'e', 'i', 'o', 'u']
    if (variable in letters):
        return True
    else:
        return False
  
  
# sequence
sequence = ['g', 'e', 'e', 'j', 'k', 's', 'p', 'r']
  
# using filter function
filtered = filter(fun, sequence)
  
print('The filtered letters are:')
for s in filtered:
    print(s)


Output:

The filtered letters are:
e
e

Application:
It is normally used with Lambda functions to separate list, tuple, or sets.




# a list contains both even and odd numbers. 
seq = [0, 1, 2, 3, 5, 8, 13]
  
# result contains odd numbers of the list
result = filter(lambda x: x % 2 != 0, seq)
print(list(result))
  
# result contains even numbers of the list
result = filter(lambda x: x % 2 == 0, seq)
print(list(result))


Output:

[1, 3, 5, 13]
[0, 2, 8]

Please refer Python Lambda functions for more details.


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!