Partage
  • Partager sur Facebook
  • Partager sur Twitter

Input + entrer un nom sans les ""

string

Sujet résolu
    11 novembre 2011 à 15:40:07

    Bonjour à tous,

    Je commence la programmation en python. J'ecris actuellement un petit programme ou j'ai besoin d'entrer le nom des joueurs. Le problème est que je suis obligé de toujours entrer une chaine de caractere entre " " sinon j'ai cette erreur qui apparait :

    Traceback (most recent call last):
    File "tarot.py", line 187, in <module>
    player1 = input()
    File "<string>", line 1, in <module>
    NameError: name 'd' is not defined

    Mon programme fonctionne très bien par contre si je rentre une string entre "". Suis obligé d'ecrire avec les "" à chaque fois ?

    Ci dessous le bout du code utile :

    # -*-coding:Utf-8 -*
    import os

    ...
    if nplayer == 3:
    print("Veuillez entrer le nom du joueur 1 :")
    player1 = input()
    ...

    Voila, j'ai regardé dans le tutorial Python, mais nul part apparait la notion de toujours utilisé des "" si on entre une chaine de caractere...
    J'utilise Python 2.7 sous Ubuntu 11.10

    Merci d'avance
    • Partager sur Facebook
    • Partager sur Twitter
      11 novembre 2011 à 15:47:24

      Bonjour, utilises les balises code prévus à cet effet: <code type="python"></code>

      Ce qui donne:
      # -*-coding:Utf-8 -*
      import os
      
      ...
      if nplayer == 3:
      print("Veuillez entrer le nom du joueur 1 :")
      player1 = input()
      ...
      


      Je n'ai pas bien compris ton problème, peux-tu nous le ré-expliquer s'il te plaît ?

      Si tu veux rentrer une chaîne dans une variable, tu peux faire comme suit:

      joueur1 = input("Entrez un nom pour le Joueur_1>")
      #maintenant joueur1 contient le nom 'scenes de menage'
      joueur2 = input("Un autre nom pour le joueur2: >")
      #joueur2 vaut: 'je code en Python.3'
      
      #Pour afficher les noms tu dois faire
      print(joueur1, joueur2)
      #ou bien
      print("Nom J1: {0} | Nom J2: {1}".format(joueur1, joueur2))
      
      • Partager sur Facebook
      • Partager sur Twitter
      Anonyme
        11 novembre 2011 à 16:00:16

        Il faut utiliser raw_input() et non input() avec la version 2.x python

        • Partager sur Facebook
        • Partager sur Twitter
          11 novembre 2011 à 17:23:41

          Merci pour vos réponses !

          Il s'agit bien de input_raw(), cela fonctionne sans problemes maintenant.
          Pour les balises python, je le saurais pour la prochaine fois :)
          • Partager sur Facebook
          • Partager sur Twitter
            11 novembre 2011 à 18:12:38

            Citation : fred1599

            Il faut utiliser raw_input() et non input() avec la version 2.x python



            Hum exacte. Bien vu ;)
            • Partager sur Facebook
            • Partager sur Twitter
              11 novembre 2011 à 18:20:13

              Citation : bux31



              Il s'agit bien de input_raw()



              Heu, raw_input() ;)
              • Partager sur Facebook
              • Partager sur Twitter

              Input + entrer un nom sans les ""

              × 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