La función map() es una función integrada en Python, que aplica una función determinada a cada elemento iterable (como lista, tupla, etc.) y devuelve una lista de resultados o un objeto de mapa.
Sintaxis:
map(función, iterbl)
Parámetros:
funct: la función que se va a ejecutar para cada iterable
iterbl: una secuencia o colección de objetos iterables que se va a mapear
Nota :
- Puede pasar tantos iterables como desee a la función map().
- Asegúrese de que la función tenga un parámetro para cada iterable.
Ejemplo :
Python3
# Python program to show working # of map() function # Return cube of n def cube(n): return n**3 # Taking list as iterator evennum = [2,4,6,8] res = map(cube,evennum) print(list(res))
Producción :
[8, 64, 216, 512]
Pasando Múltiples Argumentos a la función map()
Podemos pasar múltiples argumentos iterables a la función map(). Para esto se deben seguir ciertas reglas-
- Supongamos que pasamos n iterable a map(), entonces la función dada debería tener n número de argumentos.
- Estos argumentos iterables deben aplicarse en una función dada en paralelo.
- En múltiples argumentos iterables, cuando se vacía el iterable más corto, el iterador del mapa se detendrá.
- Pero en el caso de Python 2, el iterador del mapa se detendrá cuando finalice la secuencia más larga.
CÓDIGO 1: Pasar dos listas y la función ‘suma’ a map().
Acercarse:
- Defina una función sum, que devuelve la suma de dos números.
- Declarar e inicializar lst1 y lst2.
- Pasando la función sum, lst1 y lst2 a map().
- El elemento en el índice 0 de la lista pasará como argumento a la función de suma y se devolverá su suma.
- Este bucle continúa hasta que se agotan los elementos de una lista.
- El resultado se almacenará en la lista de resultados.
Python3
# Python program to demonstrate # passing of multiple iterable arguments to map() # using 2 lists # Function which return sum of 2 numbers def sum(a,b): return a+b # list 1 lst1=[2,4,6,8] # list 2 lst2=[1,3,5,7,9] result=list(map(sum,lst1,lst2)) print(result)
Producción :
[3, 7, 11, 15]
CÓDIGO 2: Pasar tres listas y la función ‘Multiplicar’ a map().
Acercarse:
- Defina una función Multiplicar, que devuelve el producto de tres números.
- Declarar e inicializar lst1, lst2 y lst3.
- Pasando la función Multiplicar, lst1, lst2 y lst3 a map().
- El elemento en el índice 0 de las tres listas pasará como argumento a la función Multiplicar y se devolverá su producto.
- Este bucle continúa hasta que se agotan los elementos de una lista.
- El resultado se almacenará en la lista de resultados.
Python3
# Python program to demonstrate # passing of multiple iterable arguments to map() # using 3 lists # Function which return product of 2 numbers def Multiply(a,b,c): return a*b*c # list 1 lst1=[2,4,6,8,10,12,14,16] # list 2 lst2=[1,3,5,7,9,11,15] #list 3 lst3=[2,3,5,7,11,13,17] result=list(map(Multiply,lst1,lst2,lst3)) print(result)
Producción :
[4, 36, 150, 392, 990, 1716, 3570]
CÓDIGO 3: Pasar la función de ‘división’, una lista y una tupla a map().
Acercarse :
- Definición e inicialización de listas y tuplas.
- Definición de la función de división que realiza la división de dos números.
- Pasando la función lst, tup y división a map().
- El elemento en el índice 0 de la lista y la tupla pasará como argumento a la función de división y se devolverá su cociente.
- Este bucle continúa hasta que se agotan los elementos de la lista o la tupla.
- El resultado se almacenará en la lista de resultados.
Python3
# Python program to demonstrate # passing of multiple iterable arguments to map() # using list and tuple # Function which perform division of 2 numbers def division(a,b): return a/b # list lst=[2,4,6,8,10,12,14,16] # tuple tup=(2,3,5,7,9,11) result=list(map(division,lst,tup)) print(result)
Producción :
[1.0, 1.33333333333333333, 1.2, 1.1428571428571428, 1.1111111111111112, 1.0909090909090908]
Publicación traducida automáticamente
Artículo escrito por vanshgaur14866 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA