Función filter

La función filter filtra elementos de un objeto iterable, dejando solo aquellos que cumplen una condición específica. En el primer parámetro se especifica la función de retorno (callback), según la cual se filtrará el objeto. En el segundo parámetro - el propio objeto a filtrar.

En el objeto permanecen solo aquellos elementos para los cuales la función de retorno devuelve True.

Como resultado, la función devuelve un objeto iterable especial. Se puede convertir en una lista utilizando la función list.

Sintaxis

pythonfilter(función, objeto a filtrar)

Ejemplo

Filtremos la lista original para obtener una lista que contenga solo los elementos pares:

pythonlst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 == 0, lst)
print(list(res))

Resultado de la ejecución del código:

python[2, 6, 8]

Ejemplo

Y ahora filtremos solo los elementos impares:

pythonlst = [2, 3, 6, 8, 15]
res = filter(lambda x: x % 2 != 0, lst)
print(list(res))

Resultado de la ejecución del código:

python[3, 15]

Véase también

  • el método sort,
    que ordena los elementos de una lista
  • la función sorted,
    que devuelve una lista ordenada a partir de objetos iterables
  • la función map,
    que recorre objetos iterables