La fonction map () applique une fonction donnée à chaque élément d'un itérable (liste, tuple etc.) et renvoie une liste des résultats.
La syntaxe de map()
est:
map (fonction, itérable,…)
map () Paramètre
- function -
map()
passe chaque élément de l'itérable à cette fonction. - itérable - itérable qui doit être mappé
Vous pouvez transmettre plusieurs itérations à la map()
fonction.
Valeur de retour de la carte ()
La map()
fonction applique une fonction donnée à chaque élément d'un itérable et renvoie une liste des résultats.
La valeur renvoyée par map()
(objet de la carte) peut ensuite être transmise à des fonctions telles que list () (pour créer une liste), set () (pour créer un ensemble) et ainsi de suite.
Exemple 1: Fonctionnement de la carte ()
def calculateSquare(n): return n*n numbers = (1, 2, 3, 4) result = map(calculateSquare, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)
Production
(16, 1, 4, 9)
Dans l'exemple ci-dessus, chaque élément du tuple est au carré.
Puisque map()
s'attend à ce qu'une fonction soit transmise, les fonctions lambda sont couramment utilisées lors de l'utilisation de map()
fonctions.
Une fonction lambda est une fonction courte sans nom. Visitez cette page pour en savoir plus sur la fonction Python lambda.
Exemple 2: Comment utiliser la fonction lambda avec map ()?
numbers = (1, 2, 3, 4) result = map(lambda x: x*x, numbers) print(result) # converting map object to set numbersSquare = set(result) print(numbersSquare)
Production
(16, 1, 4, 9)
Il n'y a aucune différence dans les fonctionnalités de cet exemple et de l' exemple 1 .
Exemple 3: Passage de plusieurs itérateurs à map () à l'aide de Lambda
Dans cet exemple, les éléments correspondants de deux listes sont ajoutés.
num1 = (4, 5, 6) num2 = (5, 6, 7) result = map(lambda n1, n2: n1+n2, num1, num2) print(list(result))
Production
(9, 11, 13)