filtro de python

Funciones y métodos de Python

El método filter () de Python se utiliza para filtrar listas, conjuntos y tuplas.  filter () sigue cualquier criterio proporcionado para filtrar un objeto iterable y devuelve el resultado filtrado.

Cuando esté programando, es posible que tenga una lista de valores que desea filtrar de alguna manera. Por ejemplo, es posible que tenga una lista de pedidos de galletas y solo desee devolver aquellos que involucran chocolate, que son manejados por un cocinero específico en su tienda de galletas.

Ahí es donde el filtro de Python () entra en juego. El método filter () se puede usar para filtrar una lista particular basada en un conjunto predefinido de criterios y devolver un iterable con los datos filtrados.

En este tutorial, discutiremos el método filter () y cómo puedes usarlo en tu código. También veremos un par de ejemplos de la función en código Python.




Filtro Python

Las listas son un tipo de datos en Python que se pueden usar para almacenar múltiples valores con un tema. Por ejemplo, podría usar una lista para almacenar toda la ropa que una tienda de moda local tiene a la venta, o para almacenar una lista de nombres de lenguajes de programación.

A menudo, cuando trabaja con listas, usted & rsquo; desea filtrar la lista en función de un conjunto de criterios. Por ejemplo, es posible que esté operando una sala de cine y desee saber cuántas personas menores de 18 años asisten al cine en su complejo de cines.

filter () , un en función, se puede utilizar para filtrar una lista y devuelve un iterador. Aquí está la sintaxis del método filter () :

 filtro (función , iterable_object) 

El método filter () toma dos parámetros:

El 81% de los participantes declaró que se sentía más seguro acerca de su trabajo técnico prospectos después de asistir a un bootcamp. Asóciese a un bootcamp hoy mismo.

El graduado promedio de un bootcamp pasó menos de seis meses en la transición profesional, desde comenzar un bootcamp hasta encontrar su primer trabajo.

El objeto iterable que especifique puede ser iterables, como listas , conjuntos y tuplas de Python.




Ejemplos de filtros de Python

Repasemos un ejemplo para demostrar cómo se puede utilizar este método.

Digamos que está operando un puesto de revistas y desea verificar si necesita o no pedir un nuevo inventario. Si tiene menos de 20 ediciones de alguna revista, debe realizar un nuevo pedido; Si tiene más de 20 ediciones de una revista, no es necesario que realice un nuevo pedido. Tiene una lista de números que almacena las cantidades de revistas que tiene.

Para comprobar si necesita realizar un pedido de revistas, puede utilizar el siguiente código:

 cantidades = [25, 49, 21, 17, 14, 28] def checkQuantities (mags): if mags & lt; 20: return True else: return False filter_mags = filter (checkQuantities, amount) print (list (filter_mags)) 

Nuestro código devuelve: [17, 14]

Analicemos nuestro código. En la primera línea, definimos una variable llamada cantidades que almacena cuántas ediciones de cada revista tenemos en nuestro inventario.

Luego, definimos una función llamada checkQuantities que verificará si tenemos menos de 20 ediciones de una revista específica en stock. Si tenemos menos de 20 ediciones, nuestra función checkQuantities devuelve True; de lo contrario, devolverá False.

A continuación, usamos el método filter () y especificamos checkQuantities como nuestra función y cantidades como nuestro objeto iterable. Esto le dice a nuestro método filter () que ejecute checkQuantities en cada elemento de la matriz de cantidades.

Luego, imprimimos el resultado de nuestro filter () método, y use list () para convertirlo en una lista. Esto es importante porque filter () devuelve un objeto filtrado, no una lista. Entonces, si queremos ver nuestros datos, necesitamos convertirlos en una lista.


Como puede ver, nuestro código devuelve dos valores: 17 y 14. Cada uno de ellos es menor de 20, lo que significa que nuestro programa ha funcionado como se esperaba.

Vamos a repase otro ejemplo para mostrar cómo funciona este método. Supongamos que somos instructores de baile y queremos saber las edades de todos los miembros de nuestra clase que tienen entre siete y diez años, incluidos siete y diez. Podríamos usar el siguiente código para obtener estos datos:

 student_ages = [7, 9, 8, 10, 11, 11, 8, 9 , 12] def checkAges (edades): si edades & gt; = 7 y edades & lt; = 10: devuelve True else: devuelve False filter_ages = filter (checkAges, student_ages) print (lista (edades_filtradas)) 

Nuestro código devuelve: [7, 9, 8, 10, 8, 9] . Como puede ver, nuestro programa ha filtrado a los estudiantes de entre siete y diez años. de los elementos de nuestra lista, incluidos siete y diez. La lista resultante contiene nuestros datos filtrados. 




Filtro Python con Lambda

Para que nuestra operación de filtrado sea más eficiente, podemos usar la función Lambda del mapa de lista. Lambda es una función especial que se define sin un nombre y se puede usar para escribir funciones anónimas breves de una línea en Python.

Por lo tanto, tomemos nuestro ejemplo de cantidades de revistas de arriba. En ese ejemplo, creamos una función que verificaba si teníamos menos de 20 ediciones de una revista en stock y usamos filter () para ejecutar esa función en nuestra lista de revistas. Luego, nuestro programa devolvió una lista de todas las revistas para las que teníamos menos de 20 ediciones.

Podríamos usar una función Lambda para realizar esta misma acción, pero de manera más eficiente. Aquí está el código que podríamos usar:

 cantidades = [25, 49, 21, 17, 14, 28] filtradas_mags = filtro (lambda mag: mag & lt; 20, cantidades) imprimir (lista (filtradas_mags)) 

Nuestro código devuelve: [17, 14] .

Como puede ver, nuestro resultado es el mismo, pero nuestro código es significativamente más corto. En lugar de definir una función completa, hemos utilizado Lambda para definir una función de una línea.


Esta función de una línea verifica si tenemos menos de 20 copias de una revista en stock y devuelve True al iterador filter () si es Después de la ejecución, nuestro programa devuelve una lista con dos valores: 17 y 14.

"Career Karma entró en mi vida cuando más lo necesitaba y rápidamente me ayudó a combinar con un bootcamp. ¡Dos meses después de graduarme, encontré el trabajo de mis sueños que se alineaba con mis valores y metas en la vida! "

Venus, ingeniero de software en Rockbot

La función filter () de Python se puede usar para filtrar un objeto iterable basado en un conjunto de criterios predefinidos y devuelve un iterable filtrado. Este método puede ser útil si tiene una lista de datos de los cuales solo desea recuperar valores que cumplan con ciertos criterios.

En esta guía, discutimos la sintaxis del método filter () y cómo se puede usar en Python. exploramos algunos ejemplos de filter () en acción, luego vimos cómo se puede usar filter () con una función Python Lambda para hacer nuestro código más eficiente.

¡Ahora está equipado con la información que necesita para usar filter () como un experto en Python!





filtro de python: StackOverflow Questions

Tutorials