\

Pythonでは、ファイルを継続的に読み込むためのいくつかの方法があります。特に、ログファイルなどの頻繁に更新されるファイルを読み込む場合に有用です。

方法1: readlinesleepを使用する

以下のコードは、ファイルの最後まで到達した場合に一時停止し、新しい行が追加されるのを待つ方法を示しています。

import time

def follow(thefile):
    thefile.seek(0,2)  # ファイルの末尾に移動
    while True:
        line = thefile.readline()
        if not line:
            time.sleep(0.1)  # 新しい行が追加されるのを待つ
            continue
        yield line

logfile = open("yourfile.log", "r")
loglines = follow(logfile)
for line in loglines:
    print(line)

このコードは、Unixのtail -fコマンドのPython版と考えることができます。

方法2: ファイルの更新を監視する

別のアプローチとして、ファイルが更新されたときに通知を受け取るようにすることも可能です。これには、pyinotifyのようなライブラリを使用します。

以上の方法を使用することで、Pythonでファイルを継続的に読み込むことが可能です。適切な方法を選択することで、効率的なコードを書くことができます。

投稿者 admin

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です