Função built-in filter() do Python

Da documentação do Python 3

Constrói um iterador a partir daqueles elementos do iterável para os quais a função retorna verdadeiro. O iterável pode ser uma sequência, um contêiner que suporta iteração, ou um iterador. Se a função for None, a função identidade é assumida, ou seja, todos os elementos do iterável que são falsos são removidos.

Introdução

A função filter() em Python é uma função built-in que permite processar um iterável e extrair os itens que satisfazem uma determinada condição. Ela retorna um iterador com os elementos que atendem aos critérios.

Sintaxe

filter(function, iterable)
  • function: A função a ser executada para cada item no iterável. Deve retornar True ou False para cada item.
  • iterable: O iterável a ser filtrado, como uma lista, tupla ou string.

Descrição

A função filter() constrói um iterador a partir daqueles elementos do iterável para os quais a função retorna True. Se a função for None, ela remove todos os elementos do iterável que são falsos.

Exemplo

def is_even(num):
    return num % 2 == 0

numbers = [1, 2, 3, 4, 5, 6]
even_numbers = list(filter(is_even, numbers))
print(even_numbers)
[2, 4, 6]

Neste exemplo, a função is_even é definida para determinar se um número é par ou não. O método filter recebe dois argumentos: o primeiro argumento é a função a ser aplicada a cada elemento da lista, e o segundo argumento é a lista a ser filtrada. O método filter retorna um iterador, que é então convertido em uma lista e armazenado na variável even_numbers. A saída final é a lista de números pares da lista original.