中断IPython中具有Try-Catch块的循环

问题描述

如果我有一个带try-catch块的for循环,并且中断了内核,则该循环将转到错误块,然后继续进行下一个迭代。我想完全停止循环,有没有办法做到这一点?当前,如果要停止循环,必须杀死内核,这意味着再次加载模型等,这需要时间。

示例:我想知道是否有一种方法可以中断整个for循环,而不是如果我打错了一个中断。

import time
for i in range(100):
    try:
        time.sleep(5)
        print(i)
    except:
        print('err')

解决方法

您可以break跳出循环:

for i in range(100):
    try:
        time.sleep(5)
        print(i)
    except:
        print('err')
        break