1

有没有办法获得最后一次迭代,使用 Python 的 tqdm 模块,以防失败,例如异常?我在文档或谷歌上没有找到任何东西。

我想获得最后一次迭代,这样我就可以从发生异常的地方重新开始循环(在我的情况下是超时错误)。

我虽然是这样的:

def loop_and_call_external_service(list, start_at=0):
    if start_at > 0:
        # cut the list using start_at index

    for i in tqdm(list):
       call_a_service_that_might_timeout(list.id)

retry_attempts = 0

try:
    loop_and_call_external_service(list, 0)
except SomeService.TimeoutException:
    if retry_attempts <= 3:
        retry_attempts += 1
        last_index = tqdm._last_iteration_pointer
        loop_and_call_external_service(list, last_index)
    else:
        exit()
exception AnythingElse:
    exit()
  • 不是真正的代码,只是为了让你们理解我想要做什么。
4

0 回答 0