141

tqdm プログレス バーを使用する場合: ループ内のプログレス バーと同じ行にメッセージを追加できますか?

「tqdm.write」オプションを使用してみましたが、書き込みごとに新しい行が追加されます。各反復でバーの横に短いメッセージを表示して、次の反復で消えるようにしたいと思います。これは可能ですか?

4

6 に答える 6

53

を使用set_postfixして、バーに値を直接追加できます。

例:

from tqdm import tqdm
pbar = tqdm(["a", "b", "c", "d"])
num_vowels = 0
for ichar in pbar:
    if ichar in ['a','e','i','o','u']:
        num_vowels += 1
    pbar.set_postfix({'num_vowels': num_vowels})

後置辞書は進行状況バーに統合されています。

100%|███████████| 4/4 [00:11<00:00,  2.93s/it, num_vowels=1]

辞書の代わりにset_postfix_str、進行状況バーの最後に文字列を追加するために使用できます。

于 2020-09-01T18:06:17.890 に答える