Partage
  • Partager sur Facebook
  • Partager sur Twitter

Problème input

Anonyme
    14 août 2019 à 17:47:58

    Bonsoir,

    Dans mon code j'ai un input. Quand je lance mon programme si je veux saisir du texte il faut obligatoirement mettre des guillemets. Après quelques recherche j'ai pu comprendre que ce problème était réglé sous python2 par un raw_input mais moi je suis bien en python3 (Quand je vais dans le terminal et que je tape : python -V je vois bien que je suis en troisième version).

    NB : Je suis sous mac et j'ai inscrit : # -*- coding: utf-8 -*- au début de mon code

    Merci d'avance pour votre aide,

    Mael.

    • Partager sur Facebook
    • Partager sur Twitter
      14 août 2019 à 17:59:05

      Sans le code que tu as écrit, ça va être difficile de répondre.
      • Partager sur Facebook
      • Partager sur Twitter
        14 août 2019 à 20:27:40

        S'il faut obligatoirement mettre des guillemets avec la fonction input(), t'es peut-être pas en Python3.

        En Python3 input() a le même comportement que raw_input() en Python2, donc essaie les deux et regarde les différences de comportement.

        • Partager sur Facebook
        • Partager sur Twitter

        Blond, bouclé, toujours le sourire aux lèvres...

        Anonyme
          14 août 2019 à 20:30:18

          # -*- coding: utf-8 -*
          
          import os
          from random import *
          from math import *
          
          
          argent = randrange(2000)
          jouer = True
          
          print("Bienvenue au casino, vous avez", argent,"€")
          
          while jouer:
              case = -1
              while case < 0 or case > 10:
                  case = input("Sur quelle case voulez-vous miser (Entre 0 et 10): ")
                  try:
                      case= int(case)
                  except ValueError:
                      print("Vous n'avez pas saisi de nombre")
                      case = -1
                      continue
                  if case < 0:
                      print("Veuillez saisir un nombre compris entre 0 et 10")
                  if case > 10:
                      print("Veuillez saisir un nombre compris entre 0 et 10")
          
              mise = 0
              while mise <= 0 or mise > argent:
                  mise = input("Inscrivez votre mise : ")
                  try:
                      mise = int(mise)
                  except ValueError:
                      print("Vous n'avez pas saisi un nombre")
                      mise = 0
                      continue
                  if mise <=0:
                      print("Veuillez saisir un nombre superieur à 0")
                  if mise > argent:
                      print("Vous n'avez pas les fonds nécessaire")
          
              caseGagnante = randrange(11)
              print("Numéro gagnant :", caseGagnante)
              if caseGagnante == case:
                  argent = round(((argent - mise) + (mise * 3)),1)
                  print("Bravo, tu as maintenant", argent,"€ dans ta poche")
              elif caseGagnante != case:
                  if caseGagnante % 2 == 0 and case % 2 == 0:
                      argent = round(((argent - mise) + (mise / 2)),1)
                      print("Bravo, tu as maintenant", argent,"€ dans ta poche")
                  else:
                      argent = round((argent - mise),1)
                      print("Dommage, tu as maintenant", argent,"€ dans ta poche")
          
              if argent <= 0:
                  print("Tu n'as plus d'argent, la partie est finie")
                  jouer = False
              else:
                  quitter = input("Souhaitez-vous quitter la partie (Oui / Non) ?")
                  if quitter == "Oui" or quitter == "oui":
                      jouer = False
                  else:
                      jouer = True
          

          Par exemple ici, si je marque a la fin Oui sans les guillemets j'ai un message d'erreur du type "name "oui" is not defined"
          Et d'ailleurs je profite de ce post pour une autre question, comment on fait pour afficher les accents (Sur le cours ce que j'ai mis en haut du code avait l'air suffisant) 
          NB : Pour rappel je suis sur mac

          -
          Edité par Anonyme 14 août 2019 à 20:31:16

          • Partager sur Facebook
          • Partager sur Twitter
            14 août 2019 à 20:36:11

            Ton script est exécuté par un interpréteur Python2 et pas Python3.
            • Partager sur Facebook
            • Partager sur Twitter

            Blond, bouclé, toujours le sourire aux lèvres...

            Anonyme
              14 août 2019 à 21:14:45

              Pourtant j'ai bien python 3... Comme faire pour le forcer a utiliser le 3 ?
              • Partager sur Facebook
              • Partager sur Twitter
                14 août 2019 à 21:50:36

                Comment tu exécutes ton script, depuis un éditeur de texte ou un IDE, depuis un terminal ?
                • Partager sur Facebook
                • Partager sur Twitter

                Blond, bouclé, toujours le sourire aux lèvres...

                Anonyme
                  15 août 2019 à 5:14:53

                  Avec « python launcher.app« , ça me lance le terminal avec le script
                  • Partager sur Facebook
                  • Partager sur Twitter
                    15 août 2019 à 14:06:43

                    On dirait bien que tu es sous Python 2.

                    Pas compliqué de savoir, écris le fichier essai.py :

                    print 42


                    et lance ton «python launcher.app» sur essai.py. Si ça ne plante pas (ça affiche 42), c'est que t'es sous Python 2. Si t'es sous python 3, ça plantera.

                    • Partager sur Facebook
                    • Partager sur Twitter
                      15 août 2019 à 14:48:21

                      Ou dans ce fichier, tu écris

                      import sys
                      print(sys.version)
                      print(sys.executable)

                      Et là il te donnera la version et le chemin d'accès vers l'interpréteur Python qui a été utilisé.

                      Je n'y connais pas grand chose au Mac, dont je ne saurais pas te dire comment faire pointer ton python launcher.app vers la version désirée. :(

                      • Partager sur Facebook
                      • Partager sur Twitter
                      Anonyme
                        15 août 2019 à 16:04:04

                        Je viens d'essayer vos deux programmes et j'utilise bien du python 2...
                        • Partager sur Facebook
                        • Partager sur Twitter
                          15 août 2019 à 16:16:35

                          Mael.niv a écrit:

                          Je viens d'essayer vos deux programmes et j'utilise bien du python 2...


                          Il te reste 4 mois et 16 jours :)

                          -
                          Edité par PascalOrtiz 15 août 2019 à 16:16:53

                          • Partager sur Facebook
                          • Partager sur Twitter
                          Anonyme
                            15 août 2019 à 16:57:04

                            J’espère que d'ici la j'aurai trouvé comment le virer de mon ordi ou au moins d'utiliser la version 3 qui est pourtant bien installé...
                            • Partager sur Facebook
                            • Partager sur Twitter
                              15 août 2019 à 17:02:45

                              Dans cet article https://www.maketecheasier.com/using-python-3-on-mac/ ils indiquent que le python launcher utilise python 2 par défaut. Ils expliquent aussi comment le changer :

                              2. This will open a Preferences window. By default, the launcher will run everything with a Python 2 interpreter. To change this to Python 3, you’ll need to change the directory path under “Interpreter” to /usr/local/bin/python3. That is where the Python 3.5 interpreter is installed by default.

                              Bon cet article a été écrit pour python 3.5, mais le principe reste similaire pour une version ultérieure.

                              • Partager sur Facebook
                              • Partager sur Twitter
                                15 août 2019 à 17:10:51

                                Salut

                                Même le dernier MacOS a python 2 et 3. Pour lancer python 3, il suffit d’écrire python3.

                                Ça donne quoi python3 launche.app ?

                                • Partager sur Facebook
                                • Partager sur Twitter
                                Anonyme
                                  15 août 2019 à 17:18:01

                                  Merci beaucoup Dan737, c'était juste un problème d'incompréhension de ma part... En gros quand dans le terminal on marque la commande

                                  python -V

                                  Ca donne la version 2.7 donc je comprenais pas comment lancer mes programmes avec python 3.

                                  Du coup pour les prochains qui auront le problème :

                                  Il suffit juste d'installer python3, de lancer le python launcher et dans l'interpreter marquer : "/usr/local/bin/python3" ce qui va lancer vos programmes avec python 3

                                  NB : Même avec ca, si vous allez dans le terminal après avoir fait ca, le "python -v" vous affichera toujours la version 2.7, il suffit de taper la commande python3 et le terminal sera sous python3

                                  • Partager sur Facebook
                                  • Partager sur Twitter

                                  Problème input

                                  × 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