Je dis à mon programme d'imprimer la ligne 53 d'une sortie. Est-ce que cette erreur me dit qu'il n'y a pas autant de lignes et ne peut donc pas l'imprimer?
Si vous avez une liste de 53 éléments, le dernier est thelist[52]
car l'indexation commence à 0.
Oui,
Vous essayez d'accéder à un élément de la liste qui n'existe pas.
MyList = ["item1", "item2"]
print MyList[0] # Will work
print MyList[1] # Will Work
print MyList[2] # Will crash.
Avez-vous une erreur ponctuelle?
Oui. La séquence n'a pas le 54ème élément.
C'est vrai. 'index de liste hors plage' signifie probablement que vous faites référence à n-th
élément de la liste, tandis que la longueur de la liste est inférieure à n
.
La façon dont Python fonctionne est qu'elle commence à, donc le premier numéro de votre liste serait [0]. Vous devrez imprimer [52], car l'indice de départ est 0 et donc la ligne 53 est [52]
.
Soustrayez 1 de la valeur et ça devrait aller. :)
Gardez toujours à l'esprit lorsque vous voulez surmonter cette erreur, la valeur par défaut de l'indexation et de la plage commence à 0, donc si le nombre total d'éléments est 100, alors l [99] et la plage (99) vous donnera accès jusqu'au dernier élément.
chaque fois que vous obtenez ce type d'erreur, veuillez vérifier les éléments qui se situent entre/milieu de gamme, et assurez-vous que leur index n'est pas le dernier si vous obtenez une sortie, vous avez fait une erreur parfaite comme mentionné ci-dessus.
Si vous lisez une liste à partir d'un fichier texte, vous pouvez obtenir la dernière ligne vide en tant qu'élément de liste. Vous pouvez vous en débarrasser comme ceci:
list.pop()
for i in list:
i[12]=....