Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Función Filter en Uso | Funciones de Orden Superior y Lambdas
Conceptos de Programación Funcional en Python
Sección 2. Capítulo 3
single

single

bookFunción Filter en Uso

Desliza para mostrar el menú

Ya has visto cómo las funciones de orden superior como map permiten aplicar una función a cada elemento de una secuencia. Otra función de orden superior esencial en Python es filter.

La función filter se utiliza para seleccionar elementos de una secuencia según si cumplen una determinada condición. Recibe dos argumentos: una función que devuelve True o False para cada elemento, y la secuencia a filtrar. El resultado es un iterador que contiene solo aquellos elementos para los cuales la función devuelve True. Esto hace que filter sea especialmente útil cuando se desea extraer elementos específicos de una lista, tupla u otro iterable según un criterio, como números pares, valores positivos o cadenas de cierta longitud.

123456
def is_even(n): return n % 2 == 0 numbers = [1, 2, 3, 4, 5, 6] even_numbers = list(filter(is_even, numbers)) print(even_numbers)
copy

Este código utiliza la función filter() para crear una nueva lista que contiene solo los números enteros pares de una colección existente. Funciona definiendo una función predicado, is_even(n). La función filter itera a través de la lista de números, aplicando esta comprobación a cada elemento y descartando aquellos que no cumplen la condición. Finalmente, el objeto filter resultante se convierte de nuevo en una lista, produciendo la salida.

Note
Nota

Cuando se utiliza la función filter, esta devuelve un objeto filter, que es un iterador, no una lista. Si imprimes el resultado de filter directamente, verás una salida similar a:

<filter object at 0xfffec885eb30>

Para acceder a los valores filtrados como una lista, es necesario convertir el objeto filter usando list().

Tarea

Desliza para comenzar a programar

Vas a utilizar la función filter para seleccionar números positivos de una lista.

  • La función is_positive debe devolver True si el argumento es mayor que cero, y False en caso contrario.
  • La función filter_positive debe usar la función filter junto con is_positive para crear una nueva lista que contenga solo los números positivos de la lista de entrada.
  • La función debe devolver esta nueva lista.
  • No olvides eliminar pass.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 2. Capítulo 3
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

some-alt