必须在终端执行which python3(macOS/Linux)或py -c "import sys; print(sys.executable)"(Windows)获取真实绝对路径,该路径是Sublime构建系统cmd字段唯一有效依据,跳过验证将导致静默失败。

怎么确认你本地 Python 解释器的真实路径?
Sublime Text 不读系统 PYTHONPATH,也不查 PATH 环境变量——它只认你手动填进去的绝对路径。跳过这步验证,后面所有配置都可能静默失败。
必须在终端里执行对应命令拿到真实路径:
- macOS / Linux:运行
which python3(别用python,系统可能没软链) - Windows:运行
where python或更稳妥的py -3 -c "import sys; print(sys.executable)"
结果类似:/usr/local/bin/python3、C:/Users/Alice/AppData/Local/Programs/Python/Python311/python.exe 或虚拟环境内的 venv/bin/python。这个路径,就是你要塞进构建系统的唯一依据。
新建 Build System 时 cmd 字段怎么写才不报错?
cmd 是整个构建系统能否跑起来的核心字段,写错一个字符就卡住或报奇怪错误,而且 Sublime 很少给明确提示。
正确写法必须满足三点:
- 数组第一项是**完整绝对路径**,不能写
python3或python(除非你确定 PATH 在 Sublime 启动时被完整继承,但通常不是) - 第二项固定加
-u参数,否则print()输出可能延迟、卡住或乱码 - 第三项用
$file,不是$file_name或$file_path;前者带完整路径,后两者会导致模块导入失败
Windows 用户特别注意:反斜杠要双写(C:\Python311\python.exe)或全改正斜杠(C:/Python311/python.exe)。写成 C:\Python311\python.exe 会触发 Invalid escape 错误。
快速生成专业的 Python 脚本和应用代码。一键创建完整项目结构,支持CLI、API、爬虫、Bot、Django等多种项目类型,包含完整的项目结构、配置文件、依赖管理、测试、README和文档。
为什么用了虚拟环境还是 import 报 ModuleNotFoundError?
不是包没装,是你 Sublime 调用的解释器和 pip 安装的环境根本不是同一个。
常见于以下场景:
- 你在终端激活了
venv或conda activate myenv,但没在该环境下运行which python就直接填了系统路径 - 路径里含空格或中文(如
C:\Users\张三\venv\Scripts\python.exe),Sublime 无法解析 - 构建系统里漏了
"selector": "source.python",导致 Sublime 没把它和 .py 文件关联上,Ctrl+B 实际调用的是默认构建系统
实操建议:进入你的项目目录 → 激活虚拟环境 → 运行 which python(macOS/Linux)或 py -c "import sys; print(sys.executable)"(Windows)→ 把输出路径原样粘贴进 cmd 数组第一项。
如何验证当前构建系统到底用了哪个解释器?
最直接的办法是在 Python 文件里写一行:
import sys; print(sys.executable)
然后 Ctrl+B 运行。输出路径必须和你在 cmd 里填的一致。如果不一致,说明:
- 你没在 Build System 菜单里手动选中刚建的
.sublime-build文件(Sublime 不会自动切换) - 文件扩展名不是
.py,或者selector字段写错了(比如写成source.py) - 有多个同名构建系统,Sublime 加载了旧版本(删掉 Packages/User 下重复的 .sublime-build 文件再试)
路径里的 python.exe 或 python3 名字本身不重要,重要的是它指向哪里——这才是真正决定 import 行为、语法支持、编码处理的源头。

















