raw_input вызывает EOFError после создания exe с py2exe

После создания exe из скрипта с py2exe raw_input() вызывает ошибку EOFError.

Как я могу этого избежать?

 File "test.py", line 143, in main
    raw_input("\nPress ENTER to continue ")
EOFError: EOF when reading a line

person volting    schedule 25.11.2010    source источник


Ответы (1)


>>> 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.

что случилось? что вы печатаете на клавиатуре?

изменить (сообщенный комментарий здесь):

Я предполагаю, что вы использовали py2exe с аргументом «windows», что означает, что консоль не открыта - без консоли нет stdin для использования raw_input. Вместо этого вы можете использовать аргумент «консоль» в вашем setup.py, и ваш exe откроет окно консоли, позволяющее работать с raw_input.

person Ant    schedule 25.11.2010
comment
У меня нет возможности что-либо сделать/ввести. У меня есть raw_input() в конце основного, так что он будет приостановлен, чтобы я мог видеть данные, которые были выведены на стандартный вывод. Он работал нормально, прежде чем я создал и исполнил... Если для этой цели есть альтернатива raw_input(), я мог бы использовать ее. Любые идеи? - person volting; 26.11.2010
comment
Я предполагаю, что вы использовали py2exe с аргументом Windows, что означает, что консоль не открыта - без консоли нет стандартного ввода для использования raw_input. Вместо этого вы можете использовать аргумент консоли в вашем setup.py, и ваш exe откроет окно консоли, позволяя работать raw_input------ из mail-archive.com/[email protected]/msg04832.html - person Ant; 26.11.2010
comment
Да именно в этом была проблема. Я использовал перефразированную версию скрипта py2exe, который я использовал для создания exe-файла для графического приложения wxPython, отсюда и использование аргумента windows. Спасибо - person volting; 26.11.2010