使用tqdm的Python进度栏

时间:2019-09-13 14:49:40

标签: python-3.7 tqdm

我使用tqdm模块编写了以下代码,但未在一行中得到输出

   from tqdm import tqdm
   import time

   for i in tqdm(range(10)):
       print('Hello')
       time.sleep(3)

    10%|█         | 1/10 [00:03<00:27,  3.00s/it]Hello
    20%|██        | 2/10 [00:06<00:24,  3.00s/it]Hello
    30%|███       | 3/10 [00:09<00:21,  3.00s/it]Hello
    40%|████      | 4/10 [00:12<00:18,  3.00s/it]Hello
    50%|█████     | 5/10 [00:15<00:15,  3.00s/it]Hello
    60%|██████    | 6/10 [00:18<00:12,  3.00s/it]Hello
    70%|███████   | 7/10 [00:21<00:09,  3.00s/it]Hello
    90%|█████████ | 9/10 [00:27<00:03,  3.00s/it]Hello
   100%|██████████| 10/10 [00:30<00:00,  3.00s/it]Hello   

2 个答案:

答案 0 :(得分:0)

您要使用

tqdm.write('Hello')

代替

print('Hello')

这将产生:

Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
Hello
100%|█████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████████| 10/10 [00:30<00:00,  3.00s/it]

进一步阅读:https://tqdm.github.io/docs/tqdm/#write

答案 1 :(得分:0)

通常,如果您像在循环中那样使用tqdm并随后打印某些内容,则该条将在下一行中重新创建。您可以使用Mark Allen所说的内容,或者如果只想跟踪剩余时间/经过的时间,则可以避免打印任何内容。