La fonction map()#

La fonction map() est une fonction intégrée en Python qui permet d’appliquer une fonction à chaque élément d’un itérable (par exemple, une liste) et de retourner un nouvel itérable contenant les résultats.

Cela vous permet de traiter une liste ou un tuple de données de manière simple et efficace, sans avoir à écrire une boucle for.

Voici comment elle est utilisée :

resultat = map(fonction, iterable)

fonction est la fonction à appliquer à chaque élément de l’itérable, et iterable est l’itérable sur lequel la fonction sera appliquée.

La fonction map() retourne un objet de type map, qui est un itérable, mais qui n’est pas une liste ou un tuple, par exemple.

Pour obtenir les résultats sous forme d’une liste ou d’un tuple, vous pouvez utiliser la fonction list() ou tuple, comme ceci :

resultat = list(map(fonction, iterable))
resultat = tuple(map(fonction, iterable))

Voici quelques exemples pour illustrer comment utiliser la fonction map() :

[1]:
# Exemple 1 : appliquer une fonction à chaque élément d'une liste

def carre(x):
  return x**2

nombres = [1, 2, 3, 4, 5]
resultat = map(carre, nombres)

print(resultat)
print(list(resultat))
<map object at 0x000002342F474040>
[1, 4, 9, 16, 25]
[2]:
# Exemple 2 : appliquer une fonction à chaque élément d'un tuple

def cube(x):
  return x**3

nombres = (1, 2, 3, 4, 5)
resultat = map(cube, nombres)

print(resultat)
print(tuple(resultat))
<map object at 0x000002342F48F400>
(1, 8, 27, 64, 125)
[3]:
# Exemple 3 : utiliser plusieurs itérables en même temps

def multiplie(x, y):
  return x*y

liste1 = [1, 2, 3, 4, 5]
liste2 = [10, 20, 30, 40, 50]
resultat = map(multiplie, liste1, liste2)

print(resultat)
print(list(resultat))
<map object at 0x000002342F957730>
[10, 40, 90, 160, 250]
[4]:
# Exemple 4 : utiliser une fonction anonyme (lambda)

nombres = [1, 2, 3, 4, 5]
resultat = map(lambda x: x**2, nombres)

print(resultat)
print(list(resultat))
<map object at 0x000002342F957370>
[1, 4, 9, 16, 25]