sublime text需手动配置build system才能运行python:必须用绝对路径指定python解释器、加-u参数禁用缓冲、含"$file"动态传入当前文件,否则ctrl+b报错或无响应。

能直接运行,但默认不工作——Sublime Text 本身不带 Python 解释器,必须手动配置构建系统,否则按 Ctrl+B 会报错 "python" is not recognized 或直接无响应。
Build System 配置:路径、-u、$file 缺一不可
这是最常卡住的一步。Sublime 运行 Python 的本质是调用你系统里的 python 可执行文件,所以路径必须绝对准确。
-
"cmd"字段必须写解释器的**绝对路径**:Windows 上写"C:/Python311/python.exe"(正斜杠)或"C:\Python311\python.exe"(双反斜杠),不能只写"python"——除非它已全局加入 PATH 且你确认终端里python --version能正常返回 - 务必加上
"-u"参数:禁用输出缓冲,否则print()可能延迟显示甚至卡住,尤其在有输入(input())时会彻底阻塞 -
"$file"是当前打开的 .py 文件路径,不能写成硬编码路径或漏掉;它依赖 Sublime 正确识别文件类型(即后缀为.py且语法设为 Python) - Windows 用户若装了多个 Python 版本,建议用
py -3.11这类启动器替代路径,前提是系统级 py 启动器可用(验证方式:py -3.11 --version)
虚拟环境支持:别让 import 报 ModuleNotFoundError
你在终端里 pip install requests 成功,但在 Sublime 里 import requests 却失败?大概率是因为构建系统指向的是系统 Python,而非你激活的虚拟环境。
- 先进入你的项目虚拟环境(如
source venv/bin/activate或conda activate myenv),再运行which python(macOS/Linux)或where python(Windows),拿到该环境下解释器的真实路径 - 把这个路径填进 Build System 的
"cmd",例如["/path/to/project/venv/bin/python", "-u", "$file"] - 每个项目建议单独建一个 Build System 文件(如命名为
Python - myproject.sublime-build),避免不同项目混用解释器导致依赖冲突 - 不要指望 Sublime 自动“感知”虚拟环境——它没有 shell 激活上下文,一切靠你显式指定
插件不是必须,但 Anaconda 能解决补全和跳转失效
原生 Sublime 对 Python 几乎零支持:没补全、不能 Go to Definition、不检查拼写错误。Anaconda 插件是目前最稳定的选择,但它也有前提条件。
- 安装后必须在
Preferences → Package Settings → Anaconda → Settings - User中手动填"python_interpreter",值要和 Build System 里的一致,否则补全仍找不到包 - 跨目录 import 失效?在项目根目录加一个空的
.jedi文件(Anaconda 兼容 Jedi 配置),内容可写:{"sys_path": ["./src", "./lib"]},告诉它去哪找模块 - 如果只是写脚本、不涉及复杂包结构,其实可以跳过插件——
Ctrl+B跑通就足够,补全靠 IDE 或记忆 - 注意 Anaconda 和 LSP-Python-MS 不兼容,二者选一即可;后者更现代但配置稍重
最容易被忽略的其实是文件保存状态:Sublime 的 $file 只代表“已保存的文件路径”,如果你写了代码但没按 Ctrl+S,Ctrl+B 会运行旧版本甚至报错“文件不存在”。运行前务必先保存。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











