2

単純なプログラムがあり、pygameを使用してサウンドをインポートしましたが、それでもCLIプログラムです。exeにコンパイルするたびに、実行しようとするとEOFErrorが発生します。次のようになります。

Traceback (most recent call last):
  File "PlanetaryDistanceFromSun.pyw", line 57, in <module>
  File "PlanetaryDistanceFromSun.pyw", line 31, in main
  File "PlanetaryDistanceFromSun.pyw", line 44, in Planet
EOFError: EOF when reading a line

問題のコードは次のとおりです。raw_input( "%sは太陽からどれくらい離れていますか?"%planet)

インターネットでかなりの量の検索を行ったところ、コンソールの引数が必要だということがいくつか見つかりましたが、それが何であるかわかりません。

4

1 に答える 1

0

pygame Web サイトからこのpy2exe の例を見てください。

また、問題の解決策も含まれています。

これは GUI アプリでのみ機能します。セットアップ コマンドで "windows=" を "console=" に変更すると、うまくいきます。

関連する部分はこれです(IIRC):

...
windows = [{
            'script': self.script,
            'icon_resources': [(0, self.icon_file)],
            'copyright': self.copyright
        }],
...

に変更windowsする必要がある場所console

また、pygame-user メーリング リストのこのスレッドでも同じ問題が説明されています。

私の推測では、「windows」引数を指定して py2exe を使用したと思われます。つまり、コンソールが開かれていないことを意味します。代わりに、setup.py で "console" 引数を使用すると、exe がコンソール ウィンドウを開き、raw_input が機能するようになります。

于 2012-08-15T06:34:56.367 に答える