\

Pythonでテキストファイルを読み込む際、特定の条件を満たす行だけを読み込むことがよくあります。この記事では、その方法をいくつか紹介します。

テキスト全体を先に読み込む

テキストファイル全体を読み込んだ後に、特定の行を指定して抽出する方法です。以下のように実装できます。

with open("sample.txt", "r", encoding="utf-8") as f:
    lines = f.readlines()
    # 50001行目を取得
    print(lines[50000].rstrip())

指定行までfor文でスキップする

指定行までfor文で読み飛ばすパターンです。以下のように実装できます。

with open("sample.txt", "r", encoding="utf-8") as f:
    for _ in range(100000):
        next(f)
    line = f.readline()
    print(line)  # '100001行目\n'

isliceで複数行を指定する

itertoolsモジュールのislice()を使うと、特定の行を簡単に抽出できます。

from itertools import islice

with open("sample.txt", "r", encoding="utf-8") as f:
    lines = islice(f, 1000, 1003)
    for line in lines:
        print(line.rstrip())

if文で条件分岐

特定の条件を満たす行だけを読み込む場合、if文で条件分岐を行います。

with open("sample.txt", "r", encoding="utf-8") as f:
    for line in f:
        if "特定の条件":
            print(line)

これらの方法を組み合わせることで、様々な条件でのテキストファイルの読み込みが可能になります。適切な方法を選んで、効率的なコードを書きましょう。

投稿者 admin

コメントを残す

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