Maison >développement back-end >Tutoriel Python >Comment puis-je accéder aux index d'éléments lors d'une itération avec la boucle « for » de Python ?

Comment puis-je accéder aux index d'éléments lors d'une itération avec la boucle « for » de Python ?

DDD
DDDoriginal
2024-12-20 14:57:16371parcourir

How Can I Access Element Indices While Iterating with Python's `for` Loop?

Accès aux indices d'éléments dans les boucles 'for' en Python

Comment accéder à l'index d'un élément lors d'une itération sur une séquence à l'aide d'un Boucle 'for' en Python ? Examinons la solution ci-dessous :

Considérez l'extrait de code Python :

xs = [8, 23, 45]

for x in xs:
    print("item #{} = {}".format(index, x))

L'objectif est que ce code imprime le résultat suivant :

item #1 = 8
item #2 = 23
item #3 = 45

Cependant , le code ci-dessus entraînera une erreur, car la variable « index » n'est pas définie dans la boucle. Pour résoudre ce problème, nous pouvons utiliser la fonction enumerate de Python :

for idx, x in enumerate(xs):
    print(idx, x)

enumerate fournit un moyen pratique d'itérer sur une séquence, en attribuant un index (à partir de 0) à chaque élément lors de sa boucle. Dans le code modifié ci-dessus, 'idx' représente désormais la valeur de l'index.

Bien qu'il puisse être tentant d'implémenter une indexation manuelle en utilisant des boucles 'for i in range(len(xs))' et en accédant manuellement aux éléments à ' xs[i]', il est considéré comme non-Pythonic. Python encourage l'utilisation d'idiomes comme enumerate autant que possible, offrant des solutions à la fois concises et efficaces.

Pour plus d'informations sur ce sujet, reportez-vous au PEP 279 :

  • [Protocole d'itération]( https://www.python.org/dev/peps/pep-0279/#special-semantics)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn