148 votes

Python 2.7 obtient l'entrée de l'utilisateur et la manipule comme une chaîne sans guillemets

Je veux obtenir une chaîne de caractères d'un utilisateur, puis la manipuler.

testVar = input("Ask user for something.")

Existe-t-il un moyen de faire en sorte que testVar soit une chaîne de caractères sans que l'utilisateur doive saisir sa réponse entre guillemets ? Par exemple, "Hello" ou "Hello".

Si l'utilisateur tape "Hello", j'obtiens l'erreur suivante :

NameError : le nom 'Hello' n'est pas défini

0voto

st_443 Points 51

Mon code de travail avec les corrections :

import random
import math
print "Welcome to Sam's Math Test"
num1= random.randint(1, 10)
num2= random.randint(1, 10)
num3= random.randint(1, 10)
list=[num1, num2, num3]
maxNum= max(list)
minNum= min(list)
sqrtOne= math.sqrt(num1)

correct= False
while(correct == False):
    guess1= input("Which number is the highest? "+ str(list) + ": ")
    if maxNum == guess1:
        print("Correct!")
        correct = True
    else:
        print("Incorrect, try again")

correct= False
while(correct == False):
guess2= input("Which number is the lowest? " + str(list) +": ")
if minNum == guess2:
     print("Correct!")
     correct = True
else:
    print("Incorrect, try again")

correct= False
while(correct == False):
    guess3= raw_input("Is the square root of " + str(num1) + " greater than or equal to 2? (y/n): ")
    if sqrtOne >= 2.0 and str(guess3) == "y":
        print("Correct!")
        correct = True
    elif sqrtOne < 2.0 and str(guess3) == "n":
        print("Correct!")
        correct = True
    else:
        print("Incorrect, try again")

print("Thanks for playing!")

0voto

Mak Points 26

Il s'agit d'une solution de secours pour le cas où je devrais passer à Python 3 à l'avenir.

def _input(msg):
  return raw_input(msg)

-7voto

Sanjay Ursal Points 1

Le problème semble être résolu dans la version 3.4.2 de Python.

testVar = input("Ask user for something.")

Cela fonctionnera très bien.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X