多数のファイルをループ処理し、各ファイルの最初の数百行を処理する Python コードを作成しています。このコードを拡張して、リスト内のファイルのいずれかが圧縮されている場合、読み取り中に自動的に解凍して、コードが常に解凍された行を受け取るようにします。基本的に、私のコードは現在次のようになっています。
for f in files:
handle = open(f)
process_file_contents(handle)
プレーン テキストまたは gzip で圧縮されたテキスト (または bzip2 など) の場合、関数は常にファイルの解凍されたコンテンツへのファイル ハンドルを返すopen
ように、上記のコードを置き換えることができる関数はありますか? f
(シークは必要ありません。シーケンシャル アクセスのみです。)