python 解决tqdm模块不能单行显示的问题
作者:FantasyAMG
这篇文章主要介绍了python 解决tqdm模块不能单行显示的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
OS: Windows 10
IDE: Anaconda Spyder (Python3.6)
代码如下:
from tqdm import tqdm for i in tqdm(range(len(data))):
问题:
第一次运行时进度条正常显示:
手动(Ctrl+C)停止后,第二次运行变成每次循环新建一行:
第三次运行中间空了一行:
GitHub上找原因,总结如下:
有些IDE不支持回车(CR),导致每次新的进度条不能覆盖旧的进度条。但Spyder是支持的,出现问题的原因可能是手动终止进程导致tqdm没有完全退出导致的,应使用t.close()使其正确关闭。
解决办法:
try: with tqdm(...) as t: for i in t: ... except KeyboardInterrupt: t.close() raise t.close()
感谢GitHub上维护tqdm模块的大神!
GitHub问题链接:https://github.com/tqdm/tqdm/issues/580
以上这篇python 解决tqdm模块不能单行显示的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。