Pythonを使って、特定のディレクトリ以下のファイルを再帰的に検索する方法を紹介します。

osモジュールを使用する

Pythonのosモジュールを使用することで、ディレクトリ内のファイルを再帰的に検索することができます。

import os

def search_files(dir_path, extension):
    result = []
    for root, dirs, files in os.walk(dir_path):
        for file in files:
            if file.endswith(extension):
                result.append(os.path.join(root, file))
    return result

上記の関数を使用することで、指定したディレクトリ以下の拡張子が指定したものと一致するファイルのリストを取得することができます。

result = search_files("/path/to/directory", ".txt")
print(result)

globモジュールを使用する

globモジュールを使用することで、osモジュールを使用するよりも簡単に特定のディレクトリ以下のファイルを検索することができます。

import glob

def search_files(dir_path, extension):
    pattern = f"{dir_path}/**/*{extension}"
    result = glob.glob(pattern, recursive=True)
    return result

上記の関数を使用することで、指定したディレクトリ以下の拡張子が指定したものと一致するファイルのリストを取得することができます。

result = search_files("/path/to/directory", ".txt")
print(result)