大きなファイルを 1 行ずつ効率的に処理するには、多くの場合、次のことが必要です。各行を読み取り、リスト内の要素として保存します。これを実現するためのさまざまなアプローチを次に示します。
行末の読み取りと削除:
次のコードは、rstrip() メソッドでリスト内包表記を使用して空白文字を削除します。 (改行とスペース) それぞれの末尾からline:
with open(filename) as file: lines = [line.rstrip() for line in file]
行ごとの読み取りと処理:
大きなファイルの場合、ファイル全体をロードせずに各行を個別に処理する方が効率的です。メモリへ:
with open(filename) as file: for line in file: print(line.rstrip())
Walrus オペレーターの使用 (Python 3.8) ):
Python 3.8 ではセイウチ演算子が導入されたため、これを使用して上記のループを簡素化できます:
with open(filename) as file: while line := file.readline(): print(line.rstrip())
ファイル アクセス モードとエンコーディングの指定:
ファイルのエンコーディングと用途に応じて、アクセスを指定することができます。モードと文字エンコーディング:
with open(filename, 'r', encoding='UTF-8') as file: while line := file.readline(): print(line.rstrip())
これらのメソッドは、さまざまなファイル処理シナリオに合わせたソリューションを提供し、Python でのテキスト ファイルの操作における最適なパフォーマンスと柔軟性を保証します。
以上がファイルを 1 行ずつ読み取り、各行を Python リストに保存するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。