Menu
Coddy logo textTech

La fonction Map

Fait partie de la section Logic & Flow du Journey Python de Coddy — leçon 72 sur 78.

La fonction map() prend deux éléments principaux :

  1. Une fonction (qui contient des instructions sur ce qu'il faut faire)
  2. Une séquence d'éléments (comme une liste, ou toute collection d'éléments)

Il applique ensuite cette fonction à chaque élément de votre séquence, un par un, et vous renvoie tous les résultats.

Par exemple :

def square(n):
    return n * n

numbers = [1, 2, 3, 4, 5]  # Ceci est juste une liste de nombres
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Sortie : [1, 4, 9, 16, 25]

Ce qui s'est passé ici :

  • Nous avons une liste de nombres : [1, 2, 3, 4, 5]
  • La fonction map() prend chaque nombre, un par un
  • Elle passe chaque nombre à travers notre fonction square
  • Elle collecte tous les résultats dans l'ordre

Vous pouvez voir cela comme une chaîne de montage :

  1. Le nombre 1 entre → la fonction carré le transforme en 1
  2. Le nombre 2 entre → la fonction carré le transforme en 4
  3. Le nombre 3 entre → la fonction carré le transforme en 9 Et ainsi de suite...

Vous pouvez également utiliser une fonction lambda au lieu de définir une fonction séparée :

numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Sortie : [1, 4, 9, 16, 25]

La fonction map() fonctionne avec n'importe quelle collection d'éléments - pas seulement des nombres. Il peut s'agir de chaînes de caractères ou de tout autre type de données que vous souhaitez traiter de la même manière.

challenge icon

Défi

Facile

Créez une fonction nommée convert_to_uppercase qui prend une liste de chaînes de caractères strings en tant qu'argument. La fonction doit utiliser la fonction map() ainsi qu'une fonction lambda pour convertir chaque chaîne de la liste en majuscules. La fonction doit retourner une liste contenant les chaînes en majuscules.

Aide-mémoire

La fonction map() applique une fonction à chaque élément d'une séquence et retourne les résultats :

def square(n):
    return n * n

numbers = [1, 2, 3, 4, 5]
squared_numbers = map(square, numbers)
print(list(squared_numbers))
# Output: [1, 4, 9, 16, 25]

Vous pouvez également utiliser des fonctions lambda avec map() :

numbers = [1, 2, 3, 4, 5]
squared_numbers = map(lambda n: n * n, numbers)
print(list(squared_numbers))
# Output: [1, 4, 9, 16, 25]

La fonction map() fonctionne avec n'importe quel type de données, pas seulement les nombres.

Essayez vous-même

def convert_to_uppercase(strings):
    # Utiliser map() avec une fonction lambda pour convertir les chaînes en majuscules
    uppercase_strings = 
    
    # Retourner la liste des chaînes en majuscules
    return list(uppercase_strings)
quiz iconTestez-vous

Cette leçon comprend un petit quiz. Commencez la leçon pour y répondre et suivre votre progression.

Toutes les leçons de Logic & Flow