Problème : Erreur lors de l'accès à un index négatif dans une liste python
Citation de webdev le 23 novembre 2024, 13 h 47 minBonjour,
J'essaye d'accéder à un élément d'une liste en utilisant des indices négatifs, mais cela ne fonctionne pas comme prévu. Voici mon code :
ma_liste = [10, 20, 30, 40]
print(ma_liste[-5])
Cela renvoie l'erreur suivante :
IndexError: list index out of range
Je pensais que les indices négatifs parcouraient la liste depuis la fin, mais ici ça ne fonctionne pas. Qu'est-ce que je fais mal ? Merci pour votre aide !"
Bonjour,
J'essaye d'accéder à un élément d'une liste en utilisant des indices négatifs, mais cela ne fonctionne pas comme prévu. Voici mon code :
ma_liste = [10, 20, 30, 40]
print(ma_liste[-5])
Cela renvoie l'erreur suivante :
IndexError: list index out of range
Je pensais que les indices négatifs parcouraient la liste depuis la fin, mais ici ça ne fonctionne pas. Qu'est-ce que je fais mal ? Merci pour votre aide !"
Citation de dominator le 23 novembre 2024, 14 h 49 minBonjour webdev,
Les indices négatifs fonctionnent uniquement dans les limites de la liste (de -1 à -len(ma_liste)). Dans votre cas, -5 dépasse la longueur de la liste. Voici la solution :
Utilisez un indice valide, par exemple -1 pour accéder au dernier élément.
Si vous devez vérifier la validité d’un index avant l’accès :ma_liste = [10, 20, 30, 40] index = -5 if -len(ma_liste) <= index < len(ma_liste): print(ma_liste[index]) else: print("L'indice est hors des limites de la liste.")
Bonjour webdev,
Les indices négatifs fonctionnent uniquement dans les limites de la liste (de -1 à -len(ma_liste)). Dans votre cas, -5 dépasse la longueur de la liste. Voici la solution :
Utilisez un indice valide, par exemple -1 pour accéder au dernier élément.
Si vous devez vérifier la validité d’un index avant l’accès :
ma_liste = [10, 20, 30, 40]
index = -5
if -len(ma_liste) <= index < len(ma_liste):
print(ma_liste[index])
else:
print("L'indice est hors des limites de la liste.")