Função built-in filter() do Python
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
TrueouFalsepara 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.
Links Relevantes
- map(): Aplica uma função a todos os itens de um iterável e retorna um iterador com os resultados.
- iter(): Retorna um objeto iterador.
- List Comprehensions: Uma maneira concisa de criar listas, frequentemente usada como alternativa a
filter(). - Comprehensions
- Functions
- reduce()