当存在无限递归异常时,Pycharm无法在断点处停止

时间:2016-10-28 02:57:34

标签: debugging recursion pycharm breakpoints

以下是我的源代码:

def infinite_recursion(i):
    return infinite_recursion(i)


def index_out_of_range():
    arr = [1, 2, 3]
    print arr[3]


def foo():
    try:
        infinite_recursion(1)
    except:
        pass

    print 1


def bar():
    try:
        index_out_of_range()
    except:
        pass

    print 2

if __name__ == '__main__':
    foo()

当我尝试使用Pycharm进行调试时,我在函数“ foo ”中的“打印1 ”行设置了一个断点。然后我在Pycharm中执行调试过程,最后,它不会在断点处停止,这很奇怪。

然后我更改源代码并在函数“”中的“打印2 ”行设置断点,并从

更改一些源代码
if __name__ == '__main__':
    foo()

if __name__ == '__main__':
    bar()

这次Pycharm可以在断点处停止。

任何人都可以找出根本原因吗?在无限递归异常之后,似乎Pycharm调试器失效了。

0 个答案:

没有答案