tqdm进度条设置leave=False仍产生空白行问题求助
tqdm嵌套进度条leave=False产生多余空白行的问题处理
环境与问题描述
- 运行环境:VS Code、.ipynb文件、tqdm 4.67.1
- 导入方式:
from tqdm.notebook import tqdm - 问题:此前功能正常,今日使用嵌套循环时,内层进度条设置
leave=False后,每关闭一个内层进度条就会生成一行空白,空白行数为关闭的进度条数减一;已尝试重启内核、单独测试简单循环,问题未解决 - 复现代码:
from tqdm.notebook import tqdm for i in tqdm(range(10), desc="d1"): for i in tqdm(list(range(10)), desc="d2", leave=False): pass
可行解决思路
- 降级tqdm版本:该问题大概率是tqdm 4.67.1的版本兼容性bug,尝试降级到之前验证可用的版本,执行命令:
pip install tqdm==4.66.1 - 替换导入方式:改用自动适配notebook的导入方式,替换原导入语句为:
from tqdm.autonotebook import tqdm,该模块会自动检测环境并选择合适的渲染逻辑 - 回滚VS Code Jupyter插件:若近期更新过VS Code的Jupyter插件,可能是插件与tqdm版本不兼容,尝试将插件回滚到之前的稳定版本
内容的提问来源于stack exchange,提问作者6f315be2f03511bac9da8
相关产品推荐
相关产品推荐

