J'ai une variable de chaîne mais à Python 3.x, je fais: P > avec la chaîne d'entrée test code>, dans Python 2.x Cela fonctionne bien.
sdas code>, et je reçois un message d'erreur p>
7 Réponses :
Je dirais que le code dont vous avez besoin est le suivant: sinon il ne doit pas être exécuté du tout, en raison d'une erreur de syntaxe. La fonction impression code> nécessite des supports dans Python 3. Je ne peux pas reproduire votre erreur, cependant. Êtes-vous sûr que ce sont ces lignes causant cette erreur? P> p>
Vous exécutez votre code Python 3 avec un interprète Python 2. Si vous n'étiez pas, votre instruction Le résultat est que vous utilisez Python 2's imprimer code> lancerait un
syntaxierror code>
avant de ne jamais vous inviter à entrer. p>
entrée code>
, qui tente de eval code> votre entrée (probablement
sdas code>), déclare qu'il est invalide Python et meurt. P>
La fonction d'entrée Python 3 est bien expliquée dans cette vidéo: YouTube.com/watch?v=i7Y9UGHJJUG a>.
SDAS est en train d'être lu comme une variable. Pour saisir une chaîne dont vous avez besoin "" p>
Es-tu sûr? Autant que j'ai bien compris, l'OP veut que Zu passe une variable définie afin que le script évalue la variable.
Pouvez-vous élaborer ce que vous voulez dire? Ce serait mieux si vous fournissez un extrait de code?
J'ai la même erreur. Dans le terminal, lorsque j'ai tapé "Python FileName.py", avec cette commande, Python2 était Tring pour exécuter Python3 code, car le python est écrit3. Il fonctionne correctement lorsque je tape "Python3 FileName.py" dans le terminal. J'espère que cela fonctionne pour vous aussi. P>
Ou utilisez le shebang dans le script Python :). Plus d'infos, par exemple, ici: Stackoverflow.com/Questtions/6908143/...
Dans les systèmes d'exploitation tels que Ubuntu Python est préinstallé. Donc, la version par défaut est Python 2.7, vous pouvez confirmer la version en tapant la commande ci-dessous dans votre terminal si vous l'avez installé mais n'a pas défini la version par défaut, vous verrez P> test = input("enter the test")
print(test)
Si nous SETASIDE L'erreur de syntaxe d'impression, le moyen d'utiliser l'entrée dans plusieurs scénarios est -
si vous utilisez Python 2.x: P> si vous utilisez Python 3.x: p>
temperature = input("What's the current temperature in your city? (please use the format ??C or ???F) >>> ") ### warning... the result from input will <str> on Python 3.x only ### in the case of Python 2.x, the result from input is the variable type <int> ### for the <str> type as the result for Python 2.x it's neccessary to use the another: raw_input() temp_int = int(temperature[:-1]) # 25 <int> (as example) temp_str = temperature[-1:] # "C" <str> (as example) if temp_str.lower() == 'c': print("Your temperature in Fahrenheit is: {}".format( (9/5 * temp_int) + 32 ) ) elif temp_str.lower() == 'f': print("Your temperature in Celsius is: {}".format( ((5/9) * (temp_int - 32)) ) )
J'ai eu le même problème lors de l'utilisation d'un terminal avec Python2 tout en écrivant le code dans Python3
Votre instruction code> Test code> n'est pas Python 3.x: il devrait être
Imprimer (test) code>. Comme c'est le cas, Python tente d'évaluer le test comme commande.