2017-09-09 59 views
-1

この質問は以前に尋ねられましたが、そこに記載されている解決策のどれも私のためには動作していないようです。タイトルが示唆しているように、私はWindows上でPythonで戦艦ゲームを書いていましたが、それはそこで働いていましたが、Linux端末の中で実行しようとしたときに、 Here's the code.PythonプログラムはWindowsで動作しますが、Linuxでは動作しません

通常はロードされますが、開始位置を入力すると、たとえばNameError: name 'a0' is not definedと表示されます。私は最初に!/usr/bin/pythonを入れてみましたが、何も変わりませんでした。これが重複している場合、または私が本当に明白な何かを見逃している場合は、申し訳ありませんが、本当に助けていただければ幸いです。前もって感謝します。

+0

エラーのトレースバック全体を表示してください。 WindowsでPython 3、LinuxでPython 2を実行しているようです。 Pythonのバージョンを確認してください。 'input'関数は2つのバージョンで異なって動作します。 –

+0

'!/ usr/bin/python'ではなく'#!/ usr/bin/python'や '#!/ usr/bin/env python' – RedEyed

+0

これは誤字です。 '#!/ usr/bin/python'と'#!/ usr/bin/env python'の両方で試してみましたが、どちらもうまくいきませんでした。 – vojzzo

答えて

0

端末からの入力を受け入れる方法にエラーがあるようです。テキストデータ(a0、R、L、U、Dなど)を受け入れるには、入力の代わりに

raw_input() 

を使用する必要があります。 input()をraw_input()に置き換えるだけで、すべてのプラットフォームで動作します。

+0

'raw_input'がPython 3でどのように動作すると思いますか? – Matthias

+0

確かにそれはマティアスではありません。私の答えは、opの質問に関して、opのマシンがPython 2.xを実行していることを示すinput()(私はコードを辿った)を使用したときにエラーがNameErrorであることが明確に述べられています。そして、はい、あなたは本当に別の方法は、このエラーを解決するためにPython 3を使用することができます。 –

関連する問題