single
Funció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.
123456def is_even(n): return n % 2 == 0 numbers = [1, 2, 3, 4, 5, 6] even_numbers = list(filter(is_even, numbers)) print(even_numbers)
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.
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().
Desliza para comenzar a programar
Vas a utilizar la función filter para seleccionar números positivos de una lista.
- La función
is_positivedebe devolverTruesi el argumento es mayor que cero, yFalseen caso contrario. - La función
filter_positivedebe usar la funciónfilterjunto conis_positivepara 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
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla