0
点赞
收藏
分享

微信扫一扫

Python filter()

认真的老去 2022-02-06 阅读 59

In this tutorial, we will learn about the Python filter() function with the help of examples.

The filter() function extracts elements from an iterable (list, tuple etc.) for which a function returns True.

Example

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

# returns True if number is even
def check_even(number):
    if number % 2 == 0:
          return True  

    return False

# Extract elements from the numbers list for which check_even() returns True
even_numbers_iterator = filter(check_even, numbers)

# converting to list
even_numbers = list(even_numbers_iterator)

print(even_numbers)

# Output: [2, 4, 6, 8, 10]

filter() Syntax

Its syntax is:

filter(function, iterable)

filter() Arguments

The filter() function takes two arguments:

  • function - a function
  • iterable - an iterable like sets, lists, tuples etc.

filter() Return Value

The filter() function returns an iterator.

Note: You can easily convert iterators to sequences like lists, tuples, strings etc.


Example 1: Working of filter()

letters = ['a', 'b', 'd', 'e', 'i', 'j', 'o']

# a function that returns True if letter is vowel
def filter_vowels(letter):
    vowels = ['a', 'e', 'i', 'o', 'u']
    return True if letter in vowels else False


filtered_vowels = filter(filter_vowels, letters)

# converting to tuple
vowels = tuple(filtered_vowels)
print(vowels)

Output

('a', 'e', 'i', 'o')

Here, the filter() function extracts only the vowel letters from the letters list. Here’s how this code works:

  • Each element of the letters list is passed to the filter_vowels() function.
  • If filter_vowels() returns True, that element is extracted otherwise it’s filtered out.
举报

相关推荐

0 条评论