ファイルアクセス¶
Python の標準ライブラリは、ファイル、ファイル名、ファイル内容を扱う様々なツールを提供します。
ファイル名¶
ファイルを扱う最初のステップは対象ファイルのファイル名を取得することです。Python はファイル名をシンプルな文字列で表現しますが、標準、プラットフォーム独自、 os.path のコンテンツからファイル名を取得するツールを提供します。 os の listdir() でディレクトリの内容を表示するか、ファイル名のリストをパターンから取得する glob を使用してください。 fnmatch を使用すると細かな粒度でファイル名のフィルタリングができます。
メタデータ¶
ファイル名が分かったら os.stat() と stat の定数を使用してファイルサイズやパーミッションといったその他の特性をチェックしても良いです。
ファイルを読み込む¶
行単位でテキスト入力を処理するフィルタアプリケーションを開発しているなら fileinput が簡単なフレームワークを提供します。 fileinput の API は、行単位で処理する input() が返すオブジェクトをイテレートします。そのオブジェクトはファイル名のためにコマンドライン引数を解析して扱うか、もしくは sys.stdin() から直接読み込みます。その出力はファイルやパイプラインの一部として直接実行可能な柔軟性のあるツールです。
アプリケーションがファイルへランダムアクセスするなら linecache を使用すると行番号を指定して簡単にその行を読み込めます。ファイルのコンテンツはキャッシュに保持されるのでメモリの消費量に注意してください。