26 Feb 2019
filter()
is applied to each element and if it returns True, the element is selected.filter(function, iterable)
def check_even(number):
if number % 2 == 0:
return True
return False
numbers = [1, 2, 3, 4]
even_numbers_iterator = filter(check_even, numbers)
even_numbers = list(even_numbers_iterator)
print(even_numbers)
# Output: [2, 4]
numbers = [1, 2, 3, 4]
even_numbers_iterator = filter(lambda: x: (x%2 == 0), numbers)
When None
is used, all elements that are truthy values (gives True
if converted to boolean) are extracted.
some_list = [1, 'a', 0, False, True. '0']
filtered_iterator = filter(None, numbers)
filtered_list = list(filtered_iterator)
print(filtered_list)
# Output: [1, 'a', True, '0']