【发布时间】:2021-04-13 02:34:12
【问题描述】:
我有以下 for 循环:
for batch in loader:
# do something with batch
...
在从加载程序中提取批次时,我的循环有时会失败。我想做的是类似于下面的 sn-p,但我希望能够在下一个值上继续循环,而不是跳过其余的值。
error_idxs = []
try:
for i,batch in enumerate(loader):
# do something with batch
...
except:
error_idxs.append(i)
上述方法的问题是一旦发生异常就退出循环,而不是继续下一批。
有没有办法在下一批继续循环?
【问题讨论】:
-
只需将 try/except 放在循环内而不是循环外
-
如果加载器失败了你怎么能再问呢?那么什么时候停止呢?
-
加载器失败后,可以再问一遍吗?很奇怪
-
我正在尝试捕获代码循环部分中的错误。所以我的错误是在提取批次时发生的。
标签: python python-3.x exception try-catch