Liste d'index de la gamme Python

Liste d'index de la gamme Python

En python, Indexerror est l'une des erreurs d'exécution les plus courantes. L'erreur se produit chaque fois que vous essayez d'obtenir une valeur d'index qui ne se présente pas dans une liste Python. Parfois, peu de débogage peut résoudre votre erreur d'index. Il y a deux raisons derrière l'occurrence de cette erreur. La première raison derrière cette erreur est lorsque vous essayez de traverser une liste et de ne pas rappeler que les index des listes commencent à partir de zéro. Deuxièmement, lorsque vous n'utilisez pas la fonction Range () pour traverser une liste. Dans ce guide, nous parlerons de cette erreur en détail et suggérerons des moyens de le résoudre. Avec l'aide d'exemples, nous discutons de la façon dont cela fonctionne.

Exemple 1:

Dans cet exemple, nous imprimons tous les éléments présents dans une liste intitulée «CARS_NAME«Et vérifiez comment l'erreur« d'index de liste hors de portée »se produit. Nous faisons tout cela en utilisant le compilateur Spyder dans Windows 10. Donc, lancez simplement Spyder IDE, créez un nouveau fichier à partir du menu de fichiers et traitez davantage pour la mise en œuvre du programme.

Dans notre code de programme, nous avons d'abord déclaré et initialisé deux variables. La première variable, "CARS_NAME”Stocke la liste des voitures que nous voulons afficher sur l'écran de la console. Le "compter»La variable est utilisée pour enregistrer le nombre d'éléments que nous avons affichés à l'écran.

Ensuite, nous utilisons une boucle de temps. Tandis que la boucle affiche la valeur du «CARS_NAME"Au point d'index enregistré dans"compter". Cette boucle itère jusqu'à la valeur de «compter”Satisfait la condition donnée.

CARS_NAME = [«Honda», «Civic», «Corolla»]
Comte = 0
Tout en comptant <= len(cars_name)
Imprimer (CARS_NAME [COUNT])
Compter + = 1

Après avoir enregistré le fichier et spécifiant son nom, nous exécutons notre code de programme pour vérifier l'erreur. L'erreur a été affichée sur la capture d'écran ci-dessous.

Tous les éléments de notre liste sont affichés sur l'écran de la console, mais un "Erreur d'indexation" s'est produit. Le problème se produit parce que la boucle itère continuellement jusqu'à ce que le «compter»La valeur satisfait la condition donnée. Cela signifie qu'il vérifie la valeur de traversée finale de Cars_name [3], qui n'existe pas. Cela génère un Indexerror. Pour résoudre ce problème, nous pouvons modifier notre opérateur à partir de «moins d'égal à" pour "moins que". Il garantit que notre liste ne traverse que jusqu'à «compter»Satisfait la nouvelle condition donnée. Déplacez-vous et faisons cet amendement:

CARS_NAME = [«Honda», «Civic», «Corolla»]
Comte = 0
Tout en comptant < len(cars_name)
Imprimer (CARS_NAME [COUNT])
Compter + = 1

Maintenant, nous avons réussi à corriger l'indexerror. Enregistrer et exécuter le fichier et vérifier notre boucle exécute bien et essaie d'afficher CARS_NAME [3]. Le résultat réussi peut être vu maintenant.

Exemple 2:

Lorsque nous traversons une liste et oublions d'ajouter une instruction Range (). Si vous récupérez des valeurs dans cette liste, il peut y avoir une possibilité d'indexerror.

Student_rollno = [9, 10, 9]
Pour Rollno dans Student_Rollno:
Imprimer (Student_Rollno [rollno])

Dans cet exemple, nous imprimons tous les éléments présents dans le «étudiant_rollno" déployer. Ce tableau comprend le nombre de rouleaux d'élèves dans une classe. Exécutons notre code à l'aide du compilateur Spyder et vérifions ce que nous obtenons. Encore une fois, nous avons eu une erreur similaire.

Une indexerror s'est produite. Augmenons une instruction imprimée pour afficher la sortie de «étudiant_rollno".

Student_rollno = [9, 10, 9]
Pour Rollno dans Student_Rollno:
Imprimer (rollno)
Imprimer (Student_Rollno [rollno])

Encore une fois, enregistrez le code en utilisant "Ctrl + s»Et exécutez le programme pour vérifier ce qui s'est passé ensuite:

Le "rouler»9 s'affiche sur l'écran de la console. Cependant, le "rouler"La valeur est une valeur réelle de"étudiant_rollno". Mais dans notre programme, nous essayons de récupérer un «rouler»Par son numéro d'index. Pour résoudre ce problème, voici une instruction Range () pour traverser la liste de Student_Rollno. La fonction Range () crée une liste dans un ordre d'index particulier.

Student_rollno = [9, 10, 9]
Pour RollNo dans Range (0, Len (Student_RollNo)):
Imprimer (Student_Rollno [rollno])

Encore une fois, exécutez le programme et vérifiez s'il corrige l'erreur:

Conclusion

Dans ce tutoriel, nous avons discuté de l'occurrence de l'erreur "index de liste hors de portée»Et des moyens de le réparer. Pour corriger l'erreur, essayez de ne pas accéder à une valeur qui ne se produit pas dans une liste. J'espère que maintenant vous pouvez résoudre directement cette erreur lors de la compilation de vos codes.