56得票3回答
在Emacs中调试Python程序

我如何在emacs中调试Python程序? 我使用python-mode.el 我发现一些参考资料建议:import pdb; pdb.set_trace(); 但是我不确定如何使用它。

56得票9回答
Python单元测试:当测试失败时自动运行调试器

有没有一种方法可以在单元测试失败的点自动启动调试器? 目前我只能手动使用pdb.set_trace(),但这非常繁琐,因为我需要每次添加它并在最后将其删除。 例如: import unittest class tests(unittest.TestCase): def set...

55得票3回答
pdb.set_trace()导致nosetests卡住,无法进入调试器。

我正在使用nosetests运行一套测试(.py文件)。使用经典的import pdb; pdb.set_trace() nosetests运行从未完成,就停在断点设置的地方,但从未进入pdb调试器。 有什么想法吗?我尝试将断点移动到许多不同的位置(其他测试函数,其他文件),但无济于事。

53得票2回答
如何在Python调试器(pdb)中跳过列表推导式?

在pdb中,next指令不能跳过列表推导,而是会遍历其中的每个元素。是否有一种方法可以跳过它们,使得调试器在列表推导后继续执行下一行代码? 我曾被迫罗列代码,设置断点在列表推导的下一行,然后继续执行到下一个断点。这很麻烦,我想应该有更好的方法。

52得票3回答
Python调试器(pdb)停止处理向上/向下箭头,显示^[[A。

我在Ubuntu Linux 11.04(natty)的虚拟环境中使用Python 2.6。 我的(Django)Python代码中有如下代码:import pdb ; pdb.set_trace() 为了启动Python调试器(pdb)。 直到今天,它都一直有效。但是现在当pdb启动时,它...

49得票2回答
如何在另一个模块中设置断点(如果您想在函数开始执行时打断,不要在函数定义行上设置它)?

我正在尝试调试一个名为“main”的模块,它在“another_module”的第356行调用了一个名为“broken_function”的函数。我在该函数中遇到了一个错误,并希望在函数开始处设置断点。以下是代码清单。请问我做错了什么吗?因为断点不起作用:$ python -m pdb mai...

48得票1回答
Python-pdb 跳过代码(即“不执行”)

如何在pdb中跳过一行或两行代码?比方说,我当前正在一个pdb会话中:> print 10 import pdb; pdb.set_trace() destroy_the_universe() # side effect useful_line() 我希望你能够直接调用use...

46得票4回答
如何在Python pdb中列出对象的所有属性?

我试图在Python pdb中列出对象的所有属性。 假设我想要列出sys.stderr的所有属性和方法。 我应该怎么做?

45得票5回答
在pdb中,如何重置列表(l)命令行计数?

来自PDB (Pdb) help l l(ist) [first [,last]] List source code for the current file. Without arguments, list 11 lines around the current line or...

44得票2回答
进入IPython函数的步骤

有没有一种方法可以在IPython中跳转到一个函数的第一行。我想象一下,应该是这样的:%step foo(1, 2) 这段代码使用 ipdb 执行,并在 foo 的第一行设置了一个断点。 如果现在我想要这样做,我必须进入函数源代码并添加一行 import ipdb; ipdb.set_tra...