IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

exercice python: erreur condition else


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Commercial en reconversion
    Inscrit en
    Avril 2018
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Commercial en reconversion

    Informations forums :
    Inscription : Avril 2018
    Messages : 6
    Par défaut exercice python: erreur condition else
    Bonjour
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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

  2. #2
    Membre Expert
    Homme Profil pro
    Enseignant
    Inscrit en
    Juin 2013
    Messages
    1 617
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juin 2013
    Messages : 1 617
    Par défaut
    Ce ne serait pas plutôt liste[liste_len - 1] ?

  3. #3
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 062
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 062
    Par défaut
    Bonsoir,

    Mon but était que last_value prennent le dernier mot de la liste, pre_last l'avant dernier
    Voici un exemple

Discussions similaires

  1. conditions else else if ne fonctionnant pas
    Par johnny3 dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 19/01/2010, 10h22
  2. exercice python premiere annee
    Par agui26 dans le forum Général Python
    Réponses: 3
    Dernier message: 10/01/2010, 11h52
  3. Réponses: 0
    Dernier message: 14/05/2009, 11h11
  4. erreur condition if dans une somme d'un etat
    Par laurent.w dans le forum IHM
    Réponses: 6
    Dernier message: 28/12/2006, 15h50
  5. if(condition)return;... ou if(condition)else...
    Par tlemcenvisit dans le forum C++
    Réponses: 25
    Dernier message: 18/06/2005, 21h07

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo