sublime text 默认不支持一键运行 python,必须手动配置构建系统:创建 python.sublime-build 文件,内容为 { "cmd": ["python", "-u", "$file"], "file_regex": "^\[ \]*file "(.*?)", line ([0-9]*)", "selector": "source.python", "shell": true },并确保 python 在 path 中或使用绝对路径,同时添加 "working_dir": "$file_path" 和 "encoding": "utf-8" 以解决路径与中文乱码问题。

Sublime Text 默认不支持一键运行 Python,必须配置构建系统
Sublime Text 本身没有内置 Python 运行环境,所谓“一键运行”实际是调用外部 Python 解释器执行当前文件。直接按 Ctrl+B(Windows/Linux)或 Cmd+B(macOS)会失败,报错类似 Unable to find a build system 或 python: command not found。这不是 Sublime 的 bug,而是它默认没绑定任何构建规则。
手动创建 Python 构建系统文件(.sublime-build)
路径必须是 Sublime Text/Data/Packages/User/Python.sublime-build(各系统具体路径略有差异,但都落在 User 包下)。内容如下:
{
"cmd": ["python", "-u", "$file"],
"file_regex": "^[ ]*File "(...*?)", line ([0-9]*)",
"selector": "source.python",
"shell": true
}
关键点说明:
-
"cmd"中的python必须能被系统 PATH 找到;若用python3或虚拟环境中的解释器,需改写为绝对路径,例如"/Users/you/.pyenv/versions/3.11.5/bin/python" -
-u参数强制 Python 不缓冲输出,否则print()可能延迟显示或卡住 -
$file是 Sublime 的变量,代表当前打开的文件路径,不能写成./$file或加引号 -
"shell": true在 Windows 上可省略,但在 macOS/Linux 下建议保留,否则某些 shell 环境变量(如 pyenv)可能不生效
运行时常见错误和对应解法
按 Ctrl+B 后无反应、黑屏闪退、或报错,大概率是以下情况之一:
- 终端里能运行
python --version,但 Sublime 里不行 → 检查是否用了图形界面启动 Sublime(如 macOS 从 Finder 点开),会导致 PATH 丢失;应改用终端命令启动:subl . - 输出中文乱码(尤其 Windows)→ 在构建系统中添加
"encoding": "utf-8"字段,并确保 Python 文件开头有# -*- coding: utf-8 -*- - 脚本依赖相对路径(如读取同目录下的
config.json)→ 默认工作目录是 Sublime 启动时的路径,不是脚本所在目录;可在"cmd"前加"working_dir": "$file_path"来修正 - 使用了
input()卡住 → Sublime 的 Build 输出面板不支持交互输入;必须用终端运行,或改用Tools → SublimeREPL → Python → Python(需额外安装插件)
要不要装 SublimeREPL?看真实需求
如果只是跑一次性的计算脚本、测试函数,原生构建系统 + Ctrl+B 完全够用。只有当你需要:
- 反复输入参数调试(比如
input("name: ")) - 保持 Python 解释器状态(变量不重置)
- 执行多行交互式命令
才值得装 SublimeREPL。但它会引入新问题:启动慢、快捷键冲突、Python 版本切换麻烦。多数人配好构建系统后就不再需要它。
真正容易被忽略的是工作目录和编码的一致性——这两个点不调对,脚本在终端能跑,在 Sublime 里就莫名失败,而且错误信息还不提示原因。
Python免费学习笔记(深入):立即使用
在学习笔记中,你将探索 Python 的核心概念和高级技巧!











