Python : comprendre la fonction enumerate avec des exemples

Fonction enumerate python

Qu’est-ce que la fonction enumerate ?

La fonction enumerate est une fonction intégrée en Python qui prend un itérable (comme une liste, un tuple ou une chaîne) en entrée et renvoie un objet énuméré. Cet objet est une séquence de tuples, où chaque tuple contient un compteur (l’index) et l’élément de l’itérable correspondant.

Pourquoi utiliser enumerate ?

Voici quelques raisons pour lesquelles vous voudriez utiliser enumerate dans vos scripts Python :

  1. Accès simultané à l’index et à la valeur : Avec enumerate, vous pouvez obtenir l’index et la valeur de chaque élément en une seule étape, sans avoir à gérer manuellement un compteur d’index.
  2. Code plus lisible et concis : L’utilisation de enumerate rend votre code plus lisible et plus facile à maintenir, car vous n’avez pas besoin d’écrire une boucle for imbriquée ou d’utiliser des fonctions supplémentaires pour gérer les indexes.
  3. Flexibilité du point de départ : Vous pouvez spécifier le point de départ du compteur d’index, ce qui peut être utile dans certaines situations.

Syntaxe de base

Voici la syntaxe de base de la fonction enumerate :

enumerate(iterable, start=0)
  • iterable : L’objet itérable (liste, tuple, chaîne, etc.) sur lequel vous souhaitez appliquer enumerate.
  • start (optionnel) : La valeur de départ du compteur d’index. Par défaut, elle est définie à 0.

Exemples d’utilisation

Commençons par un exemple simple où nous parcourons une liste de fruits et affichons leur index et leur valeur :

fruits = ['pomme', 'banane', 'orange', 'kiwi']

# Boucle for classique
for i in range(len(fruits)):
    print(f"Index: {i}, Fruit: {fruits[i]}")

# Avec la fonction enumerate
for index, fruit in enumerate(fruits):
    print(f"Index: {index}, Fruit: {fruit}")

Vous pouvez également spécifier un point de départ différent pour le compteur d’index :

fruits = ['pomme', 'banane', 'orange', 'kiwi']

# Démarrer le compteur à 1
for index, fruit in enumerate(fruits, start=1):
    print(f"Index: {index}, Fruit: {fruit}")

Voici un autre exemple montrant comment utiliser enumerate avec des chaînes de caractères :

phrase = "Hello, World!"

# Énumérer les caractères de la chaîne
for index, char in enumerate(phrase):
    print(f"Index: {index}, Caractère: {char}")

Lire aussi :

Mon livre préféré pour s’exercer avec Python : ICI.