【Python】サブフォルダを含むファイル名を一覧で取得

Pythonでサブフォルダ(サブディレクトリ)を含むファイル名を一覧で取得する方法について入門者向けにまとめました。

サブフォルダを含むファイル名を一覧で取得

Pythonでは、標準モジュールosで指定したパス内の全ての「ファイル名」「フォルダ名(ディレクトリ名)」を取得できます。
今回は、サブフォルダ(サブディレクトリ)もまとめて一緒に取得します。

サンプルコード

サンプルプログラムのソースコードです。

相対パスあり

# -*- coding: utf-8 -*-
import os

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

for file in search_files('sample'):
    print(file)

実行結果

サンプルプログラムの実行結果です。

sample
sample\file1.py
sample\file2.jpg
sample\file3.xlsx
sample\dir1
sample\dir1\file4.py
sample\dir1\file5.jpg
sample\dir1\file6.xlsx
sample\dir2
関連記事
1 Python入門 サンプル集
関連記事