Pourquoi est-ce que j'obtiens une erreur IndexError lors de l'accès aux éléments d'une liste avec \'ar[i]\' à l'intérieur d'une boucle \'for i in ar\' ?

Barbara Streisand
Libérer: 2024-10-31 21:04:02
original
286 Les gens l'ont consulté

Why Do I Get an IndexError When Accessing Elements in a List with

Comprendre IndexError dans "ar[i]" dans "for i in ar"

Lorsque vous tentez de résumer les éléments d'une liste en utilisant une boucle for, beaucoup rencontrent une IndexError en essayant d'accéder à des éléments en utilisant "ar[i]". Cela se produit en raison d'une mauvaise compréhension du but de l'itérateur dans la boucle.

Le rôle de la variable itérateur

La variable itérateur de la boucle for (dans ce cas, "i ") représente l'élément actuel de la liste. Par exemple, étant donné une liste "ar = [1, 5, 10]", "i" contiendra séquentiellement les valeurs 1, 5 et 10. L'erreur survient lorsque "i" tente d'accéder au 5ème élément, qui se trouve en dehors de la plage d'index valide de 0 à 2 pour la liste donnée.

Construction de boucle alternative

Pour résoudre ce problème problème, la boucle doit être écrite sans indexer la liste :

for i in ar:
    theSum = theSum + i
Copier après la connexion

Ce code parcourt correctement les éléments de la liste, en ajoutant chacun à "theSum".

Utilisation de Range pour indexer

Alternativement, si une indexation est requise, un range() peut être employé :

for i in range(len(ar)):
    theSum = theSum + ar[i]
Copier après la connexion

Cette approche garantit que "i" prend uniquement des valeurs d'index valides pour "ar", empêchant ainsi l'IndexError.

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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!