J'ai une simple question de python que j'ai gelé le cerveau sur. Cet extrait de code fonctionne. Mais quand je substitue "258 494-3929" avec phonenumber, j'obtiens l'erreur suivante ci-dessous:
Pattern does not match Please enter a phone number: 258 494-3929 Traceback (most recent call last): File "pattern_match.py", line 16, in <module> phoneNumber = str(input("Please enter a phone number: ")) File "<string>", line 1 258 494-3929 ^ SyntaxError: invalid syntax C:\Users\Developer\Documents\PythonDemo>
4 Réponses :
Voir aussi http://docs.python.org/library/fonctions.html #input et http://docs.python.org/library/functions .html # Raw_Input P> entrée () code> appels
eval (Raw_Input (Invite)) CODE>, donc vous voulez
phonenumber = Raw_Input ("Veuillez entrer un numéro de téléphone:") () code> p>
Vous devez utiliser brut_input code> au lieu de
entrée code>, et vous n'avez pas à appeler
str code>, car cette fonction renvoie une chaîne elle-même:
La fonction d'entrée () en réalité évalue em> l'entrée qui est saisie: Il tente d'évaluer "258 494-3929" qui est invalide python. P> Utilisez sys.stsdin.readline (). Strip () code> Pour faire votre lecture. P> P>
en version 2.x Python, entrée () Deux choses:
La fonction RAW_Input () est meilleure dans cette situation car elle le fait n ° 1 ci-dessus mais pas # 2. p>
Si vous changez: P>
raw_input("Please enter a phone number: ")
appeler str () code> n'est pas nécessaire après l'appel
Raw_Input () code> (sauf si c'était une erreur CUT-N-CLET) :-) Votre autre point est tout à fait valide: Utilisez < Code> Raw_Input () Code> dans Python 2 et
Entrée () Code> Dans Python 3 ... Le nom a été modifié mais la fonction reste la même.
Entrée () Code> Dans Python 2 provoque des problèmes tels que décrits par le PO, d'où la raison pour laquelle il est en train d'être / été retiré de la langue (à Python 3, c'est-à-dire)
Il est vrai que l'appel str () code> est superflu, comme cela a été mentionné dans certaines des autres réponses. Cependant, ce n'est pas causant la syntaxeRorror.
Est-ce que vous stockez comme une chaîne ou une crue?