Sublime Text未执行Python代码全量逻辑,未注册版本是否为诱因?
解决Sublime Text中Python交互式输入无响应的问题
嘿,这个问题我之前也碰到过!本质原因是Sublime Text默认的Python构建系统不支持交互式输入——它的内置控制台只是用来输出结果的,没法持续接收用户输入,所以你输入第一个回车后就卡住了;而PyCharm是直接调用系统终端来运行代码,自然能正常处理多次输入请求。
下面给你两种靠谱的解决办法:
方法1:用SublimeREPL插件实现交互式运行
这是最方便的Sublime内置解决方案:
- 首先打开Package Control(快捷键
Ctrl+Shift+P/Cmd+Shift+P),输入Install Package回车,然后搜索SublimeREPL安装它。 - 安装完成后,打开你的Python代码文件,通过
Tools > SublimeREPL > Python > Python - RUN current file来运行代码,这时会弹出一个带交互式输入的窗口,就能正常输入三次姓名,最后得到输出结果了。
方法2:修改构建系统,让代码在系统终端运行
如果你习惯用Build快捷键(Ctrl+B/Cmd+B),可以自定义构建系统让代码在系统自带的终端里跑:
- 点击
Tools > Build System > New Build System,清空默认内容,粘贴以下代码:
{ "cmd": ["python", "-u", "$file"], "selector": "source.python", "shell": true, "windows": { "cmd": ["start", "cmd", "/k", "python", "-u", "$file"] }, "linux": { "cmd": ["xterm", "-e", "python3 -u $file"] }, "osx": { "cmd": ["open", "-a", "Terminal.app", "python3", "-u", "$file"] } }
- 保存文件(比如命名为
Python_Terminal.sublime-build),然后在Tools > Build System里选中这个新的构建系统。 - 现在按
Ctrl+B/Cmd+B运行代码,系统终端会自动弹出,你就能像在PyCharm里一样正常输入三次姓名,最后看到输出啦。
注意:代码里的python或python3要根据你系统里的Python命令来调整,如果用的是虚拟环境,可能还要修改路径哦。
内容的提问来源于stack exchange,提问作者JD2775
相关产品推荐
相关产品推荐

