下面我将为你提供一个从入门到实践的完整指南,涵盖最主流的两种方法:

- 使用 SublimeREPL(最简单,适合初学者)
- 使用 Sublime Debugger(更强大,接近 IDE 体验)
准备工作:安装 Package Control
无论使用哪种方法,你首先都需要在 Sublime Text 中安装 Package Control,这是管理所有插件的基石。
-
打开 Sublime Text。
-
按 `Ctrl + `` (反引号) 打开命令行。
-
根据你的操作系统,执行以下对应的代码并回车:
(图片来源网络,侵删)- Windows:
import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ','%20')).read()) - OS X:
import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ','%20')).read()) - Linux:
import urllib.request,os; pf = 'Package Control.sublime-package'; ipp = sublime.installed_packages_path(); urllib.request.install_opener( urllib.request.build_opener( urllib.request.ProxyHandler()) ); open(os.path.join(ipp, pf), 'wb').write(urllib.request.urlopen( 'http://packagecontrol.io/' + pf.replace(' ','%20')).read())
- Windows:
-
重启 Sublime Text,现在你可以在
Preferences -> Package Settings中看到Package Control菜单了。
使用 SublimeREPL(交互式调试)
这种方法的核心是在 Sublime Text 中打开一个 Python 交互式终端(REPL),然后手动执行你的代码,并在代码中加入 pdb (Python Debugger) 断点进行调试,它非常适合快速测试和学习。
步骤 1: 安装 SublimeREPL
- 按
Ctrl + Shift + P打开命令面板。 - 输入
Package Control: Install Package并回车。 - 在列表中搜索
SublimeREPL并选择它进行安装。
步骤 2: 配置 SublimeREPL
- 按
Ctrl + Shift + P,输入SublimeREPL: Python - RUN current file,这会创建一个默认的快捷键。 - 为了方便使用,建议自定义一个快捷键,设置为
F5。- 打开菜单
Preferences -> Key Bindings。 - 在右侧的用户配置文件中,添加以下 JSON 代码:
[ { "keys": ["f5"], "command": "run_existing_window_command", "args": {"id": "repl_python_run", "file": "config/Python/Main.sublime-menu"} } ] - 保存文件。
- 打开菜单
步骤 3: 使用 SublimeREPL 进行调试
假设你有以下 Python 文件 test.py:
# test.py
def find_factorial(n):
if n < 0:
print("Error: Factorial is not defined for negative numbers.")
return None
if n == 0:
return 1
else:
# 在这里设置一个断点
import pdb; pdb.set_trace()
return n * find_factorial(n - 1)
if __name__ == "__main__":
num = 5
print(f"Calculating factorial of {num}...")
result = find_factorial(num)
print(f"The factorial of {num} is {result}")
调试过程:

-
打开
test.py文件。 -
按
F5(或你设置的快捷键),Sublime Text 会在一个新的窗格中打开一个 Python REPL 终端,并自动运行你的文件。 -
你会看到 REPL 输出:
Calculating factorial of 5... > <string>(1)<module>() (Pdb)这表示程序在
import pdb; pdb.set_trace()这一行停下了,进入了 pdb 调试模式。 -
使用 pdb 命令进行调试:
n(next): 执行到下一行。- 输入
n,程序会执行return n * find_factorial(n - 1),然后因为要调用find_factorial,所以会再次进入函数,再次停在pdb.set_trace()。 - 你会看到
> <string>(1)<module>()再次出现。
- 输入
c(continue): 继续执行,直到下一个断点或程序结束。- 输入
c,程序会继续执行,直到下一个pdb.set_trace()。
- 输入
l(list): 查看当前代码段的上下文。p <variable>(print): 打印变量的值。- 输入
p n会打印出当前n的值。
- 输入
q(quit): 退出调试器,终止程序。
使用 Sublime Debugger(IDE 风格调试)
这种方法更接近专业 IDE 的体验,你可以在代码行号旁边直接点击设置断点,通过图形化界面控制执行流程、查看变量、调用堆栈等。
步骤 1: 安装 Sublime Debugger 及其依赖
- 按
Ctrl + Shift + P,输入Package Control: Install Package。 - 搜索并安装
Sublime Debugger。 - 重要依赖:
Sublime Debugger依赖于python-pydevd,你需要通过 pip 安装它。- 打开你的系统终端(不是 Sublime 的)。
- 运行命令:
pip install python-pydevd
步骤 2: 配置 Sublime Debugger
- 按
Ctrl + Shift + P,输入Sublime Debugger: Python - Debugger,这会创建一个默认的快捷键。 - 同样,建议自定义一个快捷键,例如设置为
F5。- 打开
Preferences -> Key Bindings。 - 在用户配置文件中添加:
[ { "keys": ["f5"], "command": "python_debugger", "context": [{ "key": "selector", "operator": "equal", "operand": "source.python" }] } ] - 保存文件。
- 打开
步骤 3: 使用 Sublime Debugger 进行调试
我们使用同样的 test.py 文件,但这次我们使用 Sublime Debugger 的断点功能。
# test.py
def find_factorial(n):
if n < 0:
print("Error: Factorial is not defined for negative numbers.")
return None
if n == 0:
return 1
else:
# 移除了 pdb.set_trace()
return n * find_factorial(n - 1)
if __name__ == "__main__":
num = 5
print(f"Calculating factorial of {num}...")
result = find_factorial(num)
print(f"The factorial of {num} is {result}")
调试过程:
- 打开
test.py文件。 - 设置断点:在
return n * find_factorial(n - 1)这一行行号的左侧空白处单击,会出现一个红色的圆点,这就是断点。 - 启动调试器:按
F5(或你设置的快捷键)。- Sublime Text 底部会出现一个调试控制台。
- 你的代码会高亮显示,停在断点所在的那一行(此时该行还未执行)。
- 使用调试控制台进行调试:
- 你会看到一个包含多个按钮的控制台:
- Continue (F5): 继续执行到下一个断点。
- Step Over (F10): 执行当前行,如果当前行是函数调用,则进入函数内部。
- Step Into (F11): 进入当前行的函数内部。
- Step Out (Shift+F11): 执行完当前函数的剩余部分,并跳出函数。
- Restart: 重新启动调试。
- Stop: 停止调试。
- 查看变量:在调试控制台的右侧,通常会有一个 "Variables" 或 "Scope" 面板,它会自动显示当前作用域内的所有变量及其值,你可以实时观察
n和result的变化。 - 查看调用堆栈:通常会有一个 "Call Stack" 面板,显示函数的调用层级,方便你了解程序的执行路径。
- 你会看到一个包含多个按钮的控制台:
两种方法对比
| 特性 | SublimeREPL + pdb | Sublime Debugger |
|---|---|---|
| 易用性 | 较低,需要记忆 pdb 命令 | 高,图形化界面,直观 |
| 断点设置 | 手动在代码中插入 pdb.set_trace() |
直接在行号旁点击,非常方便 |
| 变量查看 | 使用 p <var> 命令打印 |
自动在侧边栏显示所有变量 |
| 调用堆栈 | 无直接查看方式 | 有专门的 Call Stack 面板 |
| 调试控制 | 通过命令行输入 | 通过工具栏按钮 |
| 适用场景 | 快速交互式调试、学习 pdb | 复杂项目调试、接近 IDE 的体验 |
总结与建议
- 如果你是初学者,或者只是想快速运行一段代码并检查某个点的状态,SublimeREPL 是一个不错的选择,它轻量且无需太多配置。
- 如果你习惯了 PyCharm/VS Code 的调试方式,或者正在处理一个复杂的项目,强烈推荐 Sublime Debugger,它提供了更专业、更高效的调试体验,能极大地提升你的开发效率。
对于大多数 Python Sublime Debugger 是更优的选择,它让你即使在一个轻量级的编辑器中,也能享受到专业 IDE 的核心调试功能。
