Pythonでコンソールにプログレスバーを表示する方法

masayan
masayan

よくライブラリのインストールなどの際にコンソールに表示される進捗のバーをPythonで実装する方法について紹介します

環境

  • Windows 10
  • Python 3.9.4
  • VSCode

使用するソースコード

以下の公開リポジトリに置いています

GitHub - masayan1126/tao-py-py: 作業自動化用 Python ライブラリ
作業自動化用 Python ライブラリ. Contribute to masayan1126/tao-py-py development by creating an account on GitHub.

事前準備

ライブラリのインストール

pipenv install tqdm

実装

基本

  • 実装はとても簡単で、tqdmをimportしてfor文でイテレーターに指定する箇所をrangeで指定
  • range以外にもリストや文字列を渡すことも可能
  • 以下の例だと、1秒ごとにループを回して、maxが10なので10秒で進捗が完了する
from tqdm import tqdm
from time import sleep

for i in tqdm(range(10)):
    sleep(1)

100%|███████████████████████████████████████| 10/10 [00:10<00:00, 1.01s/it]

その他のTips

  • set_description()でプログレスバーの左に表示する説明文を設定可能
  • update()で進捗率を設定可能(1回のループで全体の何パーセントを完了とするか)
bar = tqdm(total=100)
bar.set_description("〇〇の進捗")

for i in range(100):
    sleep(1)
    bar.update(1)

Python学習におすすめの書籍

独習Python/山田祥寛【3000円以上送料無料】
bookfan 1号店 楽天市場店
¥ 3,300(2023/01/31 18:22時点)
タイトルとURLをコピーしました