12

私は文字列変数を持っていますtest.Python 2.xではこれはうまくいきます.

test = raw_input("enter the test") 
print test

しかし、Python 3.x では、次のようにします。

test = input("enter the test") 
print test

入力文字列sdasを使用すると、エラーメッセージが表示されます

Traceback (most recent call last):
 File "/home/ananiev/PycharmProjects/PigLatin/main.py", line 5, in <module>
    test = input("enter the test")
 File "<string>", line 1, in <module> 
NameError: name 'sdas' is not defined
4

7 に答える 7

14

Python 2 インタープリターを使用して Python 3 コードを実行しています。そうでない場合、printステートメントはSyntaxError、入力を求める前に a をスローします。

その結果、Python 2 の を使用しているということになります。これは、入力inputを試行しeval(おそらくsdas)、無効な Python であることがわかり、停止します。

于 2013-05-18T20:14:30.473 に答える
6

必要なコードは次のとおりです。

test = input("enter the test")
print(test)

そうしないと、構文エラーのため、まったく実行されません。このprint関数には、Python 3 のブラケットが必要です。ただし、エラーを再現できません。そのエラーを引き起こしているのはそれらの行だと確信していますか?

于 2013-05-18T15:10:32.323 に答える