必须安装 code runner 扩展(jun han 开发),vscode 原生不支持 ctrl+enter 运行选中代码;需重启 vscode 启用快捷键,确认解释器路径正确且选中代码语法完整,否则报 syntaxerror 或 command not found。

选中代码没反应?先确认有没有 Code Runner 扩展
VSCode 原生不支持 Ctrl+Enter 或 Cmd+Enter 运行选中代码,这是最常踩的坑。按了没反应、弹出空终端、报错 command 'terminal.runSelectedText' not found,基本都是因为没装扩展或快捷键被覆盖。
- 必须安装
Code Runner(作者 Jun Han),不是官方 Python 扩展,也不是 Run Code - 装完重启 VSCode,否则快捷键不生效
- 默认运行快捷键是
Ctrl+Alt+N(Windows/Linux)或Cmd+Option+N(macOS),不是Enter - 检查快捷键是否冲突:打开
keybindings.json,搜code-runner.run,确认没被 Git、Python 或其他扩展覆盖
Python 片段能跑通的前提:解释器路径和语法完整性
Code Runner 本质是把选中内容写进临时文件再调解释器执行,所以它不关心你当前文件里有没有 import 或变量定义——它只认你选中的纯文本。
- 必须已通过
Python: Select Interpreter指定解释器路径,状态栏要显示完整路径(如./venv/bin/python),不能只是Python 3.11 - 选中内容必须是语法完整的可执行单元:不能只选
print(,也不能只选半句if x >,否则终端报SyntaxError,错误位置总在第 1 行,根本看不出哪错了 - 多行缩进代码(比如函数体)用
echo '$selectedText' | python -容易失败,推荐让 Code Runner 默认走临时文件模式(不用改配置) - 如果系统 PATH 没加
python或python3,会报command 'python' not found,此时需在settings.json中配"code-runner.executorMap"指向绝对路径
比一键运行更靠谱的替代方案:交互式终端粘贴
很多“选中即执行”失败,其实不是插件问题,而是代码本身依赖上下文。比如你选中 result = process(data),但 data 和 process 都在前面定义——Code Runner 不知道这些。
- 开集成终端:
Ctrl+`,然后Ctrl+V+Enter,反馈快、错误准、支持多行粘贴和历史回溯 - Python 用户可启用
Python Interactive窗口(右键 →Run Selection in Python Interactive),它会自动继承当前文件的变量作用域 - JS/TS 用户直接用
Quokka.js,它会在编辑器内实时标出结果和错误行,不依赖终端输出 - 别迷信“一键”,真正省时间的是避免反复改路径、查环境、猜错误来源
为什么改 executorMap 很容易翻车
有人想自定义命令,比如给 Python 加 "python": "python -c \"$selectedText\"",结果发现中文报错、引号嵌套混乱、换行丢失——这不是配置不对,而是 shell 解析规则本身就不适合传复杂代码片段。
-
-c模式只适合单行表达式,node -e同理;含缩进、注释、三引号字符串时几乎必崩 - Windows 用户用 PowerShell 写脚本绕过 cmd 的引号限制,但又引入编码和执行策略问题
-
$selectedText是纯字符串,没有 AST 分析能力,插件无法帮你补import或识别变量依赖 - 真要深度定制,不如写个简单 shell 脚本接收 stdin、写临时文件、调解释器、清理——但多数人不如直接粘贴到终端
真正卡住人的从来不是怎么配快捷键,而是误以为“选中就能跑”是编辑器该有的能力。VSCode 拿到的永远是一段文本,不是一段上下文感知的代码逻辑。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











