使用py2exe生成exe后raw_input引发EOFError
在用 py2exe
把一个脚本变成可执行文件(exe)之后,使用 raw_input()
时出现了 EOFError 错误。
我该怎么避免这个问题呢?
File "test.py", line 143, in main
raw_input("\nPress ENTER to continue ")
EOFError: EOF when reading a line
1 个回答
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.
有什么问题?你在键盘上输入了什么?
补充说明(上面的评论):
我猜是你在用py2exe的时候选择了“windows”这个选项,这样就不会打开控制台。没有控制台的话,raw_input就没有地方可以读取输入了。你可以在你的setup.py里使用“console”这个选项,这样你的exe文件就会打开一个控制台窗口,让raw_input可以正常工作。