mapa de Python

Funciones y métodos de Python

La función map () de Python ejecuta una función en cada elemento de una colección, como una lista o un conjunto. La función map () acepta una función y un objeto para aplicar que la función operará como argumentos.

Cuando esté trabajando con una lista de elementos en Python, es posible que desee realizar una función específica en cada uno de esos elementos.

Ahí es donde entra la función incorporada de Python map (). La función de mapa de Python ejecuta una función en todos los elementos dentro de un objeto iterable, como una lista y devuelve objetos de mapa.

En este tutorial, usando una serie de ejemplos, discutimos cómo usar la función map () en Python.




Objetos iterables de Python

Los objetos iterables son elementos que contienen un número contable de valores y que se pueden atravesar. Las listas, diccionarios, tuplas y conjuntos son todos objetos iterables en Python, ya que pueden contener múltiples valores y se pueden atravesar.

Digamos que tiene una lista de nombres de estudiantes que desea almacenar. En lugar de almacenar estos nombres en varias variables de Python , puede declarar una matriz para almacenar los valores:

 estudiantes = [" Lucy "," Bill "," Graham "," Tommy "," Leslie "] 

Nuestro < La variable code> estudiantes contiene una lista, que es un objeto iterable. Esto significa que podemos recorrer los elementos de la lista. & Nbsp;




Sintaxis de la función de mapa de Python

La función map () pasa cada elemento en una lista y ejecuta una función en cada elemento. map () está integrado en Python. Esto significa que no es necesario importar ninguna biblioteca para usar el método map ().

El 81% de los participantes afirmaron que se sentían más seguros acerca de sus perspectivas laborales después de asistir a un bootcamp. Asóciese a un bootcamp hoy mismo.

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

Python map ( ) es una función de orden superior que se puede utilizar para aplicar una función específica a varios elementos en un objeto iterable. La sintaxis de la función map () de Python es la siguiente:

 map ( función, iterable) 

El primer argumento que toma la función map () es la función Esta es la función que se ejecutará en cada elemento del iterable. El iterable es el objeto que se asignará, como una lista, tupla, diccionario o conjunto.





Cómo usar la función de mapa en Python

Supongamos que es administrador en una escuela a la que se le ha encomendado la tarea de crear una lista completa de estudiantes.

Decidimos imprimir una lista de nombres de estudiantes con la calificación de la clase de cada estudiante junto a su nombre. Esto evitará confusiones si dos estudiantes en dos grados diferentes tienen el mismo nombre.

Este es una aplicación perfecta de la función map () de Python. Tenemos un iterable en el que queremos ejecutar una función. La función fusionará el nombre de un estudiante con el grado en el que se encuentra. Aquí hay un programa que podría usarse para fusionar los nombres de los estudiantes con su nivel de grado:

 def mergeNamesAndGrades (nombre): return name + "First Grade" estudiantes = ["Lucy", "Bill", "Graham", "Tommy", "Leslie"] estudiante_r oster = map (mergeNamesAndGrades, estudiantes) 

En las dos primeras líneas, declaramos una función de Python llamada mergeNamesAndGrades . Esta función combina el nombre de cada alumno con Primer Grado . & Nbsp;

Luego, en la siguiente línea, definimos la lista de alumnos de nuestra escuela. Hay cinco estudiantes en nuestra lista.

La función map () se aplica al contenido de student_roster variable de Python . La función map () toma dos argumentos: la función (en este caso, mergeNamesAndGrades) y el objeto iterable (estudiantes). & Nbsp;

El método map () aplica la función mergeNamesAndGrades () a cada estudiante en nuestra lista.

Conversión de un mapa de Python en una lista

Sin embargo, nuestro programa aún no está completo. La función map () devuelve un objeto mapeado, no nuestra lista completa. Si imprimimos nuestra variable student_roster ahora mismo, nuestro código devolverá un objeto mapeado como este:

 & lt; objeto de mapa en 0x7f2c74103890 & gt; 

Este resultado se generó porque la función map () devuelve su propio objeto personalizado, en lugar de una lista . Entonces, si queremos imprimir la lista de nombres de estudiantes, necesitamos convertir nuestra variable student_roster en una lista. Aquí está el código que podemos usar para realizar esta acción:

 print (list (student_roster)) 

Nuestro código devuelve la siguiente lista de Python :

 [' Lucy First Grade', 'Bill First Grade',' Graham First Grade', 'Tommy First Grade',' Leslie First Grade'] 

Veamos otro ejemplo. Digamos que queremos convertir el nombre y la calificación de cada estudiante en mayúsculas para nuestra lista de estudiantes. Podríamos usar el siguiente código para cambiar los casos de los nombres y calificaciones de los estudiantes:

 def changeCase (nombre) : return name.upper () student_roster = ['Lucy First Grade',' Bill First Grade', 'Graham First Grade',' Tommy First Grade', 'Leslie First Grade'] final_student_roster = map (changeCase, student_roster) print ( list (final_student_roster)) 

Nuestro código devuelve una lista sobre la que podemos iterar:

 [' LUCY FIRST GRADE', 'BILL FIRST GRADE',' GRAHAM FIRST GRADE', 'TOMMY FIRST GRADE',' LESLIE FIRST GRADE'] 

En este ejemplo , definimos una función llamada changeCase.  Esta función cambió el nombre de cada estudiante a mayúsculas. Usamos la función Python upper () para convertir las mayúsculas y minúsculas de cada nombre.


Nuestro programa usó la función map () para llamar a changeCase () en cada objeto en nuestro iterable < em> student_roster . Finalmente, nuestro programa devolvió la lista revisada de nombres de estudiantes en letras mayúsculas.




Función de mapa de Python con Lambda

El mapa de Python () La función se puede usar con la función lambda para hacer nuestro código más eficiente. En los ejemplos anteriores, declaramos una nueva función para cambiar nuestro iterable de cierta manera.

Pero si solo queremos realizar una acción en un objeto iterable una vez, no es necesario declarar una nueva función. En su lugar, podemos usar la función lambda de Python, que es una función pequeña y anónima.

"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

Las funciones Lambda se pueden usar con map () para funciones pequeñas en las que no queremos definir una nueva función .

Debido a que las funciones lambda son más concisas que las funciones regulares, debería intentar usarlas siempre que pueda. Usar funciones lambda para funciones simples ayudará a mejorar la legibilidad de su código.

Aquí hay un ejemplo de lambda que se usa para convertir el caso de una lista de nombres de estudiantes a mayúsculas, como hicimos anteriormente:

 student_roster = [' Lucy First Grade', 'Bill First Grade',' Graham First Grade', 'Tommy First Grade',' Leslie First Grade'] final_student_roster = map (lambda s: s.upper () , student_roster) print (list (final_student_roster)) 

No lo hicimos declarar una nueva función para convertir las mayúsculas y minúsculas de los nombres de nuestros estudiantes. En su lugar, usamos lambda s: s.upper () , que es una función pequeña y anónima que convertirá las mayúsculas y minúsculas de los nombres de nuestros estudiantes. & Nbsp;

Nuestro código devuelve el siguiente:

 ['LUCY FIRST GRADE',' BILL FIRST GRADE', 'GRAHAM FIRST GRADE',' TOMMY FIRST GRADE', 'LESLIE FIRST GRADE'] 



Conclusión

La función map () de Python se puede utilizar para aplicar un función a todos los elementos dentro de un objeto iterable. Por ejemplo, puede usar map () para convertir los casos de una lista de cadenas a mayúsculas. O bien, puede usar la función map () para multiplicar una lista de números por una cierta cantidad.


En este tutorial, discutimos cómo se puede usar map () en Python para aplicar una función a todos los elementos dentro de un objeto iterable. También discutimos cómo puede usar la función lambda de Python con map () para crear un código más eficiente.

Ahora está equipado con conocimiento de Python , necesitas comenzar a usar map () como un profesional.





mapa de Python: StackOverflow Questions

Tutorials