12
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

【Python】tqdmを使ったプログレスバーによる進捗表示

Last updated at Posted at 2016-12-14

インストーラ・ファイルダウンローダなど、何かしら反復処理の進捗状況を可視化したいときに、プログレスバーを手軽に実装できたら便利です。

僕も反復処理における進捗状況をもう少しマシな感じに表示したいなぁと思っていたところ、
tqdmというライブラリがあり、実際に使ってみたところとてもシンプルに実装を行うことができました。

使い方

import time
import tqdm

# 反復処理と同時にプログレスバーを標準出力
for _ in tqdm.tqdm(xrange(10)):
    time.sleep(1)

使い方は、tqdm.tqdm関数にiteratorを渡すだけです。
返戻されたiteratorオブジェクトを反復させるたびに、標準出力に進捗状況が表示されます。

結果

 0%|          | 0/10 [00:00<?, ?it/s]
10%|█         | 1/10 [00:10<01:30, 10.00s/it]
20%|██        | 2/10 [00:20<01:20, 10.00s/it]
30%|███       | 3/10 [00:30<01:10, 10.00s/it]
40%|████      | 4/10 [00:40<01:00, 10.00s/it]
50%|█████     | 5/10 [00:50<00:50, 10.00s/it]
60%|██████    | 6/10 [01:00<00:40, 10.00s/it]
70%|███████   | 7/10 [01:10<00:30, 10.00s/it]
80%|████████  | 8/10 [01:20<00:20, 10.00s/it]
90%|█████████ | 9/10 [01:30<00:10, 10.00s/it]
100%|██████████| 10/10 [01:40<00:00, 10.00s/it]

これでプログレスバー実装完了です。非常に簡単ですね。

なお、上の結果では一巡ごとの進捗表示を全て表示していますが、実際は次の表示が前の表示を上書きする形で表示されます。

12
11
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
11

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?