【发布时间】:2020-08-12 09:29:34
【问题描述】:
在 tqdm 循环中处理错误时,我希望错误消息是最后打印的内容。一个 MWE:
import tqdm
import sys
for i in tqdm.tqdm(range(10)):
if i == 3:
print('error')
sys.exit(1)
运行此程序时,tqdm 仍会在“错误”消息后打印进度条。是否有可能避免这种情况(因此“错误”是最后显示的内容)?
编辑:我实际上是从对 tqdm 一无所知的不同外部模块调用 sys.exit,并且我不想在 tqdm 对象中有一个全局变量。可能是我要求太多了……
干杯。
【问题讨论】:
-
这看起来像是一个非常人为的例子。你能举一个更现实的例子吗?如何最好地处理错误取决于您使用的实际控制流。
-
我刚刚添加了一个编辑:我实际上正在这样做,但 sys.exit 位于不同的模块中。