statモジュールはos.stat()とos.lstat()(もしあれば) の結果を翻訳するための定数と関数を定義しています。 os.stat()とos.lstat()システムコールに関する詳細はmanページを 参照して下さい。
statモジュールは以下の関数を定義しています。
以下のすべてのデータアイテムは、os.stat()またはos.lstat() が返す10個の要素を持つタプルに対するシンボリックで単純なインデックスです。
Example:
import os, sys from stat import * def process(dir, func): '''dirをルートとしたディレクトリを下に再帰的にたどり、 各レギュラーファイルに対してfuncを呼び出す。''' for f in os.listdir(dir): mode = os.stat('%s/%s' % (dir, f))[ST_MODE] if S_ISDIR(mode): # ディレクトリに入り再帰的に処理 process('%s/%s' % (dir, f), func) elif S_ISREG(mode): func('%s/%s' % (dir, f)) else: print 'Skipping %s/%s' % (dir, f) def f(file): print 'frobbed', file if __name__ == '__main__': process(sys.argv[1], f)
guido@python.org