Python 2.7 Python PDB调试器(在调试器中工作但不在SciTE中工作的代码)

Python 2.7 Python PDB调试器(在调试器中工作但不在SciTE中工作的代码),python-2.7,vpython,Python 2.7,Vpython,我对Python PDB调试器和用SciTE编写的代码有问题 所以我有一个叫做“func”的类。这个类有一个名为“hermite”的方法。我正在使用PDB调试器来找出为什么我的程序在执行此方法时会冻结 我首先说: pdb.set_trace() func.hermite(a,b,c) 当我按“n”键转到调试器中的下一行时,程序冻结 如果我将pdb.set_trace()放入方法“hermite”中,我会得到: 现在在调试器中,该方法完全执行,没有任何问题 我不知道为什么调试器在调用该方法时会

我对Python PDB调试器和用SciTE编写的代码有问题

所以我有一个叫做“func”的类。这个类有一个名为“hermite”的方法。我正在使用PDB调试器来找出为什么我的程序在执行此方法时会冻结

我首先说:

pdb.set_trace()
func.hermite(a,b,c) 
当我按“n”键转到调试器中的下一行时,程序冻结

如果我将
pdb.set_trace()
放入方法“hermite”中,我会得到:

现在在调试器中,该方法完全执行,没有任何问题

我不知道为什么调试器在调用该方法时会冻结,但是当
set\u trace
放在程序运行正常的方法中。还有,在SciTE,没关系
如果将set_trace()
放在其中,则程序不会运行。因此,程序似乎只会运行 出于某种原因,从调试器中,在方法内部使用set_trace

你知道问题出在哪里吗?我会粘贴“hermite”的代码,但它很长。我想 重要的一点是,当
set\u trace
位于方法内部时,它执行得非常好,但当
set\u trace
位于方法外部时,它会冻结

更新: 不管怎样,我已经解决了这个问题。在我的hermite方法中,我对一个微分方程进行时间步进,我使用(15-(-15))/100作为时间步间隔,python将该值限定为0,因此它无限期运行。程序在调试器中工作的原因是,我将时间步长强制为非零值,以使执行时间变小。无论如何,感谢所有看到这一切的人

def hermite(a,b,c):
    pdb.set_trace()
    .... (stuff here)