塩焼きブログ

塩焼きに関しての研究内容を公開しています

Pythonでディレクトリのファイル一覧を出力する

Pythonos.walk()にパスを渡してあげればディレクトリのごにょっとしたものが取れるようだ。それをyieldを使って逐一返してあげることで結果的にディレクトリの再帰的なファイルリストが取得できるという

import os,sys

def find(directory):
    for root, dirs, files in os.walk(directory):
        yield root
        for file in files:
            yield os.path.join(root, file)

for file in find(sys.argv[1]):
    print file

実行するにはこうする

$ python example.py ./
./
./.DS_Store
./example.py
./example2.py
./index.html
./test
./test/hoge1.txt

Thanks

説明のないとってもシンプルなサンプルプログラム集