python tqdmモジュールの簡単な使用

1759 ワード

大規模なデータを処理する場合や、反復するのに時間がかかるタスクを複数回反復する必要がある場合は、Python tqdmモジュールを使用してタスク進捗バーを表示できます.よく使われるのはtqdmモジュールのtqdmとtrangeです
tqdm使用方法:tqdm.tqdm(反復可能オブジェクト)、カッコ内の反復可能オブジェクトはlist、tupleなどであり、具体的には以下のコードがあります.
from tqdm import tqdm,trange
import time

a = [1,2,3]

for i in tqdm(a):
    print('  a[%d]:'%(i-1),i)
    time.sleep(5)

結果は次のとおりです.
  0%|                                                                                            | 0/3 [00:00, ?it/s]
  a[0]: 1
 33%|████████████████████████████                                                        | 1/3 [00:05<00:10,  5.00s/it]
  a[1]: 2
 67%|████████████████████████████████████████████████████████                            | 2/3 [00:10<00:05,  5.01s/it]
  a[2]: 3
100%|████████████████████████████████████████████████████████████████████████████████████| 3/3 [00:15<00:00,  5.01s/it]

tqdm.trangeの使用
trangeはpythonのrangeと異なり、trangeはループ実行時に印刷進捗バーを出力し、具体的には以下のコードで実現する
from tqdm import tqdm,trange
import time

for i in trange(1,4):
    print(' %d   '%i)
    time.sleep(5)

結果は次のとおりです.
  0%|                                                                                            | 0/3 [00:00, ?it/s]
 1   
 33%|████████████████████████████                                                        | 1/3 [00:05<00:10,  5.00s/it]
 2   
 67%|████████████████████████████████████████████████████████                            | 2/3 [00:10<00:05,  5.00s/it]
 3   
100%|████████████████████████████████████████████████████████████████████████████████████| 3/3 [00:15<00:00,  5.01s/it]

進捗バーの後ろの5.00 s/itは、サイクル1回に5 sかかるということです
このモジュールは使いやすいのではないでしょうか!!!