调试emacs中的python程序

时间:2010-02-24 09:04:45

标签: python debugging emacs pdb

如何在emacs中调试python程序?

我使用python-mode.el

我得到像

这样的参考
import pdb; pdb.set_trace();

但不确定如何使用它。

3 个答案:

答案 0 :(得分:46)

键入M-x cd以将目录更改为您要调试的程序的位置。 输入M-x pdb。系统会提示您Run pdb (like this): pdb。输入程序的名称(例如test.py)。

(Pdb)提示符下,键入help以了解如何使用pdb。

或者,你可以把

import pdb 
pdb.set_trace()

在您的计划内(例如test.py)。现在键入M-x shell以获取shell提示符。运行程序时,您将在执行pdb的位置转储到pdb.set_trace()

答案 1 :(得分:21)

对我来说,我需要用

替换默认的“pdb”
python -m pdb myscript.py

答案 2 :(得分:13)

realgud包(可从MELPA获得)支持PDB(在众多其他调试器中),并且具有Emac的PDB所没有的一系列简洁功能。

我最喜欢的是短键模式。一旦开始调试程序,您可以在源窗口中按nsc等,而不必在PDB缓冲区中键入这些命令。它还支持带有功能键(f10f11f5等)的Visual-Studio样式键绑定。

安装RealGUD后,您需要运行M-x load-feature realgud才能加载它,然后您可以pdb启动M-x realgud:pdb