Sublime Text 2:构建Python2.7程序时Ctrl+b报错

Sublime Text 2: Ctrl + b error message when building Python 2.7 program

每当我尝试在包含 input() 或 raw_input() 的 Sublime Text 2 (Python 2.7) 中构建代码时,我都会收到此错误:

EOFError: 读取一行时出现 EOF [在 0.1 秒内完成,退出代码为 1]

我发现一些教程说是ST没有定位的问题Python,所以我编辑了应该修复它的文件,但无济于事。我仍然遇到同样的错误。

这是什么问题,如何解决?

这不是 ST 未定位 Python 的问题,而是 ST 在构建程序时不支持交互的事实 - input()/raw_input() in Python, gets in Ruby, scanf and associates in C/C++, Scanner in Java, 等。对于编译语言,解决方法是运行你的程序通过shell处理输入。这也可以用 Python、Ruby、Perl 等解释性语言来完成,但对于许多人来说,他们更喜欢的解决方案是使用 SublimeREPL, available via Package Control. This essentially runs an interactive Python shell within Sublime, either the standard Python shell or IPython,出于多种原因我更喜欢它.

SublimeREPL 带有一系列命令,用于获取行、块、选择或整个代码文件,并将它们传递给 REPL(必须先手动启动),然后由 REPL 处理输入和输出。或者,如果您只是测试较小的代码片段,您可以在 SublimeREPL 本身中输入并 运行 它 - 我发现自己经常这样做,它非常有用。