La función map () de Python aplica una función a cada elemento del iterador dado como entrada. Puede repetir, por ejemplo, lista, tupla, conjunto, diccionario, cadena y devuelve un objeto de mapa recursivo. Un mapa de Python () es una función incorporada.
En este tutorial, aprenderá:
Sintaxis:
map(function, iterator1,iterator2 ...iteratorN)
Parámetros
Aquí hay dos que son importantes
- función: función de mapeo obligatoria, que se aplicará a todos los elementos disponibles en el iterador.
- iterador: variable obligatoria. Puede ser una lista, una tupla, etc. Puede ejecutar varios objetos iteradores para mapear una función ().
Valor devuelto
La función map () aplicará la función dada a todos los elementos dentro del iterador y devolverá un objeto de mapa variable, es decir, tupla, lista, etc.
¿Cómo funciona una función map ()?
La función map () toma dos entradas como función y como objeto variable. La función asignada a mapping () es una función normal y cambiará todos los valores presentes en el objeto variable dado.
Por ejemplo, considere que tiene una lista de números y desea elevar al cuadrado cada uno de los números.
Para obtener el resultado, necesitamos la función que devolverá el cuadrado del número dado. La función será la siguiente:
def square(n): return n*n
La siguiente es una lista de elementos que nos gustaría que recibiera el cuadrado:
my_list = [2,3,4,5,6,7,8,9]
Ahora usemos la función incorporada de python map () para encontrar el cuadrado de cada uno de los elementos en my_list.
El código final es el siguiente:
def square(n): return n*n my_list = [2,3,4,5,6,7,8,9] updated_list = map(square, my_list) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x0000002C59601748> [4, 9, 16, 25, 36, 49, 64, 81]
La salida de la función de mapa (), como se ve en la salida, es un objeto de mapa que se muestra en la pantalla como
Necesitará reorganizar la salida del mapa usando el método de bucle for o usando list () para obtener la salida final. Usé una lista () en el código que muestra los valores dentro de la lista dada.
Entonces, usando la función map (), podemos encontrar el cuadrado de cada número. Fue la lista que se le dio al mapa. [2,3,4,5,6,7,8,9] usando la función square () es la salida de un mapa () que encontramos [4, 9, 16, 25, 36, 49, 64, 81] .
La función map () aplica el cuadrado funcional () a todos los elementos de la lista. Por ejemplo, my_list variable y actualiza la lista con el cuadrado de cada número. La salida se almacena en la variable update_list.
Use Map () con funciones integradas de Python
Una función incorporada es una función de mapa de Python () y también se puede utilizar con otras funciones incorporadas disponibles en Python. En el ejemplo, usaremos una función integrada de Python round () que equilibra los valores dados.
Ejemplo:
Mi lista es my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907] .
Quiero los valores exactos para cada elemento de la lista. Usaremos round () como función para map ().
my_list = [2.6743,3.63526,4.2325,5.9687967,6.3265,7.6988,8.232,9.6907] updated_list = map(round, my_list) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x000000E65F901748> [3, 4, 4, 6, 6, 8, 8, 10]
La función round () se aplica a todos los elementos de la lista y devuelve una lista que contiene todos los valores redondeados como se muestra en la salida.
Usa un mapa () con una cadena como comedor
También podemos usar un mapa () en un cable. En Python, una cadena actúa como una matriz, por lo que podemos usarla fácilmente dentro del mapa ().
En el ejemplo, tenemos una función myMapFunc () que se encarga de convertir el cable dado en el extremo superior. La función de mapeo () se llama función myMapFunc (). La función de mapa se encargará de convertir el cable dado a la parte superior ejecutando el cable a myMapFunc ().
def myMapFunc(s): return s.upper() my_str = "welcome to guru99 tutorials!" updated_list = map(myMapFunc, my_str) print(updated_list) for i in updated_list: print(i, end="")
Producción:
<map object at 0x000000DF2E711748> WELCOME TO GURU99 TUTORIALS!
Usar un mapa () para enumerar los números
Para trabajar con la lista en un mapa () construya una lista de números y multiplique cada número en la lista por 10.
La lista que estamos usando es: [2,3,4,5,6,7,8,9]. La función myMapFunc () multiplica el número dado por 10. La función de mapeo se proporciona junto con la lista.
Ejemplo:
def myMapFunc(n): return n*10 my_list = [2,3,4,5,6,7,8,9] updated_list = map(myMapFunc, my_list) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x000000EE2C061898> [20, 30, 40, 50, 60, 70, 80, 90]
El resultado que vemos es que todos los números están en la lista.
multiplicado por 10.
Usando un mapa () con Tuple
Una tupla es algo en Python en el que los elementos están separados por comas y encerrados entre corchetes. En el ejemplo, construiremos una tupla con valores de cable. La función que usemos cambiará los valores dados al superior.
Ejemplo:
def myMapFunc(n): return n.upper() my_tuple = ('php','java','python','c++','c') updated_list = map(myMapFunc, my_tuple) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x0000009C3C3A16A0> ['PHP', 'JAVA', 'PYTHON', 'C++', 'C']
La salida que obtenemos es una tupla hacia atrás y todos los valores que contiene se convierten a un nivel superior.
Usar Map () con el diccionario
Se crea un diccionario en Python usando corchetes ({}). Dado que el diccionario es una iteración, puede usarlo dentro de la función map (). Usemos ahora un diccionario como iterador dentro de una función map ().
El siguiente ejemplo muestra el funcionamiento de un iterador de diccionario dentro de un mapa ()
def myMapFunc(n): return n*10 my_dict = {2,3,4,5,6,7,8,9} finalitems = map(myMapFunc, my_dict) print(finalitems) print(list(finalitems))
Producción:
<map object at 0x0000007EB451DEF0> [20, 30, 40, 50, 60, 70, 80, 90]
Usando un mapa () con Set
Python es una colección desordenada de elementos entre corchetes (()). Dado que set () también es un iterador, puede usarlo dentro de la función map ().
Aquí hay un ejemplo práctico del uso de un conjunto como iterador dentro de un mapa ()
def myMapFunc(n): return n*10 my_set = {2,3,4,5,6,7,8,9} finalitems = map(myMapFunc, my_set) print(finalitems) print(list(finalitems))
Producción:
<map object at 0x000000AC8F05DEF0> [20, 30, 40, 50, 60, 70, 80, 90]
Utilice Map () con la función Lambda
En Python, las expresiones lambda se utilizan para crear funciones anónimas. Necesitará usar la palabra clave lambda tal como usa def para definir funciones normales.
Entonces, en el ejemplo, usaremos la función lambda dentro del mapa (). La función lambda multiplicará todos los valores de la lista por 10.
Ejemplo:
my_list = [2,3,4,5,6,7,8,9] updated_list = map(lambda x: x * 10, my_list) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x000000BD18B11898> [20, 30, 40, 50, 60, 70, 80, 90]
Uso de múltiples iteradores dentro de la función de mapa ()
Ejemplo 1: Ejecute dos listas de comedores para map ()
Puede enviar más de un comedor, es decir, lista, tupla, etc. Todo a la vez a la función de mapa ().
Por ejemplo, si desea agregar dos listas. Lo mismo se puede hacer usando la función de mapa (). Vamos a utilizar dos listas my_list1 y my_list2.
En el siguiente ejemplo, el primer elemento de my_list1 se agrega al primer elemento de my_list2. La función myMapFunc () incluye elementos de my_list1 y my_list2 y devuelve la suma de ambos.
Aquí está el ejemplo práctico de agregar dos listas dadas usando una función de mapa ().
def myMapFunc(list1, list2): return list1+list2 my_list1 = [2,3,4,5,6,7,8,9] my_list2 = [4,8,12,16,20,24,28] updated_list = map(myMapFunc, my_list1,my_list2) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x0000004D5F751860> [6, 11, 16, 21, 26, 31, 36]
Ejemplo 2: ejecutar una contraseña y un redirector de listas a map ()
Vamos a utilizar una lista y un comedor de tuplas en una aplicación de mapas (). La función se llama mapeo: myMapFunc () recupera los elementos de la lista y de la Tupla. Los elementos se adjuntan con énfasis (_). El ejemplo de trabajo se muestra a continuación:
def myMapFunc(list1, tuple1): return list1+"_"+tuple1 my_list = ['a','b', 'b', 'd', 'e'] my_tuple = ('PHP','Java','Python','C++','C') updated_list = map(myMapFunc, my_list,my_tuple) print(updated_list) print(list(updated_list))
Producción:
<map object at 0x00000059F37BB4E0> ['a_PHP', 'b_Java', 'b_Python', 'd_C++', 'e_C']
Resumen
- Un mapa de Python () es una función incorporada que aplica una función a cada elemento del iterador dado como entrada. La repetición, por ejemplo, puede ser una lista, una tupla, una cadena, etc.
- La función map () aplicará la función dada a todos los elementos dentro del iterador y restaurará un objeto de mapa variable, es decir, tupla, lista, etc.
- Una función incorporada es una función de mapa de Python () y también se puede utilizar con otras funciones incorporadas disponibles en Python.
- Una tupla es algo en Python en el que los elementos están separados por comas y encerrados entre corchetes. En el ejemplo, una tupla se construirá con valores de cable. La función que usemos cambiará los valores dados al superior.
- Se crea un diccionario en Python usando corchetes ({}). Dado que el diccionario es una iteración, puede usarlo dentro de la función map ().
- Python es una colección desordenada de artículos entre corchetes (()). Dado que set () también es un iterador, puede usarlo dentro de la función map ().
- En Python, las expresiones lambda (o formas lambda) se utilizan para construir funciones anónimas. Por lo tanto, la palabra clave lambda debe usarse cuando desee usar lambda dentro del mapa ().
- Puede enviar más de un comedor, es decir, lista, tupla a la función de mapa ().