【问题标题】:printing text below tqdm progress bar在 tqdm 进度条下方打印文本
【发布时间】:2018-01-09 22:14:26
【问题描述】:

我想在 tqdm 进度条下方的环形缓冲区中显示文本。此文本不一定会随着栏的每次更新而更新。使用 tqdm 的 .write() 函数时,文本仅打印在条的右侧,这是不希望的。我不确定这是否可以通过 tqdm 实现。

我希望它看起来像这样:

70%|███████   | 7/10 [00:00<00:00,  9.65it/s]
Message 2 ....
Message 3 ....
Message 4 ....
Message 5 ....

当打印一条新消息时,消息 2 被删除并且消息在堆栈中向上移动。我没有绑定 tqdm,但到目前为止我一直在使用它。

【问题讨论】:

  • 你找到答案了吗

标签: python tqdm


【解决方案1】:

您可以使用第二个进度条,只使用描述。

import random
import time
from tqdm import tqdm

n_iter = 1000

with tqdm(total=n_iter, position=1, bar_format='{desc}', desc='No high number so far.') as desc:
    for i in tqdm(range(n_iter), total=n_iter, position=0):
        x = random.random()
        if x > 0.95:
            desc.set_description('High random number: %f' % x)
        time.sleep(0.1)

【讨论】:

  • 那么你需要展示你的代码不起作用
猜你喜欢
  • 1970-01-01
  • 2019-08-15
  • 1970-01-01
  • 2021-04-09
  • 1970-01-01
  • 2017-07-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多