ぼろぼろ平原

困った

Pythonで大きいファイルを読み込む時にプログレスバーを表示

プログレスバーの表示には tqdm を使う。

tqdmのインストール

$ pip install tqdm

プログレスバーを表示するプログラム

from tqdm import tqdm
import os

# ファイル名
filename = "sugoku_dekai_file.txt"

# ファイルサイズを取得
filesize = os.path.getsize(filename)

# ファイルを開く
with open(filename) as f:
    read_size = 0
    # ファイルのサイズを使用しプログレスバーを作成
    with tqdm(total=filesize) as pbar:
        # 行ごとに処理
        for line in f:
            # lineに対して何か処理
            foo(line)
            # 読み込んだサイズを取得して足す
            read_size += len(line.encode('utf-8'))
            # プログレスバーを更新
            pbar.update(read_size)