exercice python: erreur condition else
Bonjour
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28
| from random import shuffle
# generateur de phrases
# demander en console une chaine de forme "mot1/mot2/mot3/mot4/..."
# transformer cette chaine en liste
# la mélanger
# si le nombre d'élèments de cette liste est inférieur à 10
# -> afficher les 2 premiers mots
# si le nombre est supérieur ou égal à 10
#-> afficher les 3 derniers mots
#demander chaine de mot "1/2/3"
liste=input("chaine de mot sous la forme mot1/ mot2/ mot3/ ..").split("/")
print(liste)
#melanger
shuffle(liste)
print(liste)
#recuperer le nombre
liste_len=len(liste)
print(liste_len)
#afficher les 2 premiers mots
if liste_len<5:
print(liste[0], liste[1])
# afficher les 2 derniers mots
else:
last_value= liste[liste_len]-1
pre_last= last_value - 2
print(last_value)
print(liste[pre_last:last_value]) |
mon problème vient de la condition else il ne reconnait pas last_value
message erreur suivant: sur python
Traceback (most recent call last):
File "C:/Users/le boss/Desktop/cours_python_graven/exercice_graven_liste.py", line 25, in <module>
last_value= liste[liste_len]-1
IndexError: list index out of range
Mon souhait est de comprendre pourquoi? Mon but était que last_value prennent le dernier mot de la liste, pre_last l'avant dernier
afin d'afficher les 2 dernier mots de la liste si la liste inscrite est supérieur à 5
merci d'avance le débutant