Partage
  • Partager sur Facebook
  • Partager sur Twitter

Boucle i+=1 dans une liste

    24 décembre 2014 à 15:16:26

    Salut tout le monde. Je suis nouveau dans le langage python et je ne suis rendu qu'au cours sur les dictionnaires, mais il y a tout de même un problème que j'aimerais résoudre.

    Alors voila, je suis entrain de coder un mini-jeux en apprennant (inspiré du ZCasino ;0) et j'aimerais qu'une fois que le jeu se termine afficher en liste (grace à une fonction que j'ai appelé "admin()") les résultats obtenu de tout les tours joué par le joueur dans la boucle while.

    J'ai essayer de voir comment j'aurais pu organiser tout ça dans un petit brouillon, mais niveau visuelle, c'est assez loin de ce que je voulais même si je me rapproche légerement du resultat voulu.

    Alors voila le code : (dans ce brouillon, admin() est remplacé par liste()

    i=1
    liste =[]
    
    while 1:
        valeur = input("{}) Saisissez une valeur : ".format(i))
        liste.append(i)
        liste.append(valeur)
        if valeur == "stop":
            break
        i += 1

    En fait j'aimerais pouvoir obtenir une liste avec le numero de la saisie et sa valeur verticalement au lieu d'avoir un gros paquet tout moche.

    Ex :

    1) Saisissez une valeur : blabla
    2) Saisissez une valeur : blablabla
    3) Saisissez une valeur : blablablabla
    1) Saisissez une valeur : stop
    >>>liste
    1) La valeur saisie est : blabla
    2) La valeur saisie est : blablabla
    3) La valeur saisie est : blablablabla
    4) La valeur saisie est : stop 

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      24 décembre 2014 à 15:34:21

      Il n'y a absolument pas d'intérêt à avoir la variable i... si ce n'est pour indiquer le numéro de la demande, pas pour le reste.

      liste = []
      i = 1
      while True:
          valeur = input("{}) Saisissez une valeur : ".format(i))
          if valeur == "stop": break
          liste.append(valeur)
          i += 1
      
      for ind, v in enumerate(liste):
          print("{0}) La valeur saisie est : {1}".format(ind+1, v))

      Ça répond à ta demande ?

      • Partager sur Facebook
      • Partager sur Twitter
        24 décembre 2014 à 16:02:18

        Merci pour le post ! Finallement j'avais trouvé une solution, mais la tienne est baucoup plus propre.

        liste = []
        
        i = 1
        while 1:
            valeur = input("{}) Saisissez une valeur : ".format(i))
            liste.append(valeur)
            if valeur == "stop":
                lignes = i
                break
            i += 1
        
        def admin():
            i = 1
            while i <= lignes:
                print("{}) La valeur saisie est : {}".format(i, liste[i-1]))
                i += 1



        • Partager sur Facebook
        • Partager sur Twitter

        Boucle i+=1 dans une liste

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown