Day 148バッチ処理の進捗を表示する
Pythonコード
1import time2 3total_tasks = 104completed_tasks = 05 6for i in range(total_tasks):7 # タスクを実行8 time.sleep(1)9 completed_tasks += 110 # 進捗を表示11 progress = completed_tasks / total_tasks * 10012 print(f'進捗: {progress:.2f}%')
解説
- 行1: timeモジュールをインポートします。timeモジュールは、時間に関する関数を提供します。time.sleep()関数は、指定された時間だけプログラムの実行を停止します。
- 行3〜4: バッチ処理の合計タスク数と完了タスク数を定義します。total_tasksは合計タスク数、completed_tasksは完了タスク数です。
- 行6〜9: タスクを実行します。time.sleep(1)は、1秒間待機します。completed_tasks += 1は、完了タスク数をインクリメントします。
- 行11〜12: 進捗を計算して表示します。progressは進捗率で、completed_tasks / total_tasks * 100で計算します。print(f'進捗: {progress:.2f}%')は、進捗率を小数点2桁で表示します。f-stringは、文字列の中に式を埋め込むために使います。
- 行6: 補足: range() は連続した整数を順番に取り出すために使います。
次に試してみよう
- バッチ処理のタスク数を入力して、進捗を表示するプログラムを作成してみましょう。
- タスクの実行時間をランダムに変化させて、よりリアルな進捗表示を作成してみましょう。
- 進捗バーを表示するプログラムを作成してみましょう。