6

After creating an exe from a script with py2exe raw_input() is causing an EOFError.

How can I avoid this?

 File "test.py", line 143, in main
    raw_input("\nPress ENTER to continue ")
EOFError: EOF when reading a line
volting
  • 16,773
  • 7
  • 36
  • 54

1 Answers1

4
>>> help(raw_input)
Help on built-in function raw_input in module __builtin__:

raw_input(...)
    raw_input([prompt]) -> string

    Read a string from standard input.  The trailing newline is stripped.
    If the user hits EOF (Unix: Ctl-D, Windows: Ctl-Z+Return), raise EOFError.
    On Unix, GNU readline is used if enabled.  The prompt string, if given,
    is printed without a trailing newline before reading.

what's wrong? what do you type on the keyboard?

edit (reported comment up here):

My guess is that you used py2exe with the "windows" argument, meaning that no console is opened - without a console there is no stdin for raw_input to use. You can instead use the "console" argument in your setup.py, and your exe will open a console window allowing raw_input to work

Ant
  • 5,151
  • 2
  • 26
  • 43
  • I dont get a chance to do/enter anything. I have a raw_input() at the end of the main so that it will pause so I can see data that has been outputted to the stdout. It worked fine before I created and exe... .If there is an alternative to raw_input() for this purpose I could use that. Any ideas? – volting Nov 25 '10 at 21:23
  • My guess is that you used py2exe with the "windows" argument, meaning that no console is opened - without a console there is no stdin for raw_input to use. You can instead use the "console" argument in your setup.py, and your exe will open a console window allowing raw_input to work------ from http://www.mail-archive.com/pygame-users@seul.org/msg04832.html – Ant Nov 25 '10 at 21:35
  • 1
    Yes that was exactly the problem. I was using a rehashed version of a py2exe script that I used for creating an exe for a wxPython gui app, hence the use of the windows argument. Thanks – volting Nov 25 '10 at 21:46