Fonction Enumerate() en Python : une procédure pas à pas de base

Publié: 2021-06-24

Python est l'un des langages préférés des data scientists. Le langage est intuitif et Python dispose d'un éventail de bibliothèques utiles pour résoudre différents problèmes. Il comporte de nombreux modules pour aider les scientifiques des données à travers les différentes étapes de tout problème de science des données - de l'exploration de données à l'analyse en passant par la création de rapports.

Chez upGrad, nous avons encadré des professionnels de divers domaines, notamment l'économie, les sciences humaines et l'ingénierie. Python est de loin le langage le plus facile à apprendre, tant pour les débutants que pour les professionnels, à n'importe quelle étape de leur carrière. Donc, si vous êtes un data scientist en herbe qui cherche à faire ses premiers pas, Python pourrait être un bon point de départ !

Le langage de programmation Python possède plusieurs fonctionnalités pour vous aider à parcourir différents ensembles de données et à manipuler des conteneurs de données selon vos besoins. L'une de ces fonctionnalités est la méthode enumerate(). C'est l'une des fonctions les plus importantes de Python, en particulier pour travailler avec des ensembles de données volumineux. Non seulement cela, mais la fonction est également beaucoup plus optimisée que les autres fonctions Python qui effectuent une tâche similaire - elle maintient votre code efficace et propre.

La fonction ajoute un compteur à tout objet itérable. Ensuite, à l'aide du compteur, vous pouvez suivre le nombre d'itérations qui se sont produites. La valeur de ce compteur est stockée séparément. En utilisant cette méthode, vous pouvez boucler sur une liste ou un dictionnaire ou un tuple ou un ensemble d'éléments tout en gardant une trace de l'index de tous les éléments.

Dans cet article, nous détaillerons davantage la fonction enumerate() !

Syntaxe et application de la méthode enumerate()

La fonction enumerate() crée une variable de compteur distincte qui assure le suivi du nombre d'itérations dans une boucle. Il s'agit d'une fonction Python intégrée, vous n'avez donc pas besoin d'importer de bibliothèques pour y accéder.

Lorsque vous utilisez la fonction enumerate(), vous n'avez pas à vous soucier de créer l'instruction range() pour obtenir la longueur complète du tableau. Puisque vous avez la variable compteur, vous pouvez parcourir rapidement enumerate() sans créer d'itérateur différent.

Voici la syntaxe de la méthode enumerate() :

énumérer(itérable, startIndex)

Il a deux paramètres :

  • Itérable : tout objet pouvant être parcouru en boucle.
  • startIndex : Ceci est facultatif. Si vous donnez une valeur ici, le décompte commencera à partir de la valeur que vous fournissez et s'incrémentera jusqu'à la fin de la boucle. Par défaut, la valeur startIndex est 0.

Comprenons le fonctionnement de la méthode enumerate() en vérifiant quelques exemples !

Voici un petit bout de code. Nous avons un tableau du nom de food_items et, dans la boucle for, nous avons appelé la méthode enumerate() avec l'itérable étant food_items (ce sera le tableau sur lequel cette fonction bouclera). Ensuite, nous essayons d'imprimer l'index et le nom - ce sont les deux éléments renvoyés par le enumerate ()

food_items = [“Pizza”, “Burger”, “Salade”, “Lasagne”, “Spaghetti”]

pour index, nom dans enumerate(food_items):

print(index, nom)

La fonction enumerate() itère sur notre élément de tableau alimentaire et renvoie l'index et le nom. L'index est le nombre d'itérations qui se sont produites et le nom est l'élément particulier de la liste. Voici ce que le programme affiche :

0 pizzas

1 Hamburger

2 Salade

3 lasagnes

4 spaghettis

Comme vous pouvez le voir, la sortie est comme vous l'auriez prévu - vous obtenez un objet d'index et de noms pour les différents éléments de votre liste food_items. L'utilisation de la fonction enumerate() au lieu de len() ou range() rend notre code extrêmement propre et lisible !

Utilisation de l'objet Enumerate

Par défaut, enumerate() renvoie une liste de tuples. Nous pouvons le voir en imprimant la valeur de 'item' lors de l'itération sur le tableau food_items :

pour l'élément en énumérer (food_items):

imprimer (article)

Ce code renvoie la valeur d'index et l'aliment à cet index dans une structure de données tuple.

(0, 'Pizza')

(1, 'hamburger')

(2, 'Salade')

(3, 'Lasagne')

(4, 'Spaghettis')

Si vous avez prêté attention depuis le début de cet article, vous vous rappellerez que la méthode enumerate() prend en compte deux paramètres – iterable et startIndex. Par défaut, notre méthode parlait jusqu'à présent – ​​comme le startIndex. Essayons de changer cela et voyons comment cela fonctionne !

food_items = [“Pizza”, “Burger”, “Salade”, “Lasagne”, “Spaghetti”]

pour index, nom dans enumerate(food_items, 10):

print(index, nom)

Notre programme renvoie ce qui suit

10 pizzas

11 Hamburger

12 Salade

13 Lasagne

14 Spaghettis

Ceci est utile pour les cas d'utilisation où vous souhaitez commencer votre liste à partir d'un nombre autre que 0.

Nous pouvons également créer des tuples avec l'élément de liste et l'index en utilisant la méthode enumerate(). Voici un exemple :

food_items = [“Pizza”, “Burger”, “Salade”, “Lasagne”, “Spaghetti”]

food_items_with_counter = liste(énumérer(food_items, 1))

imprimer(food_items_list_with_counter)

Le code renverra une liste de tuples avec les aliments et la valeur d'index de la méthode enumerate(). Vérifiez-le:

[(1, 'Pizza'), (2, 'Hamburger'),(3, 'Salade'), (4, 'Lasagne'), (5, 'Spaghetti')]

Conclusion

La fonction enumerate() en Python est une fonction robuste et optimisée. Il est utile si vous souhaitez itérer sur un tableau de valeurs et manipuler des données à différents emplacements du tableau.

Maintenant que vous connaissez les bases de enumerate(), continuez et entraînez-vous - créez quelques tableaux et essayez d'exécuter la fonction enumerate() avec différentes entrées. Après tout, la programmation est une question de pratique. Il est important d'ajouter que la programmation (et la science des données, en particulier) consiste également à connaître les bonnes choses, en plus de simplement pratiquer de manière flagrante. Vous devez trouver un mélange des deux - connaissance et pratique.

Si vous êtes un débutant dans ce domaine et que vous cherchez de l'aide, upGrad est là pour vous ! Notre Master of Science en apprentissage automatique et intelligence artificielle fonctionne en collaboration avec IIIT-Bangalore et LJMU. Vous bénéficiez d'un soutien personnalisé d'experts de l'industrie, d'un solide groupe d'étudiants et d'un soutien professionnel à 360 degrés.

Contactez-nous aujourd'hui et faites progresser votre carrière!

Menez la révolution technologique basée sur l'IA

MASTER EN APPRENTISSAGE MACHINE ET INTELLIGENCE ARTIFICIELLE
Appliquer maintenant