Pythonでサブディレクトリをイテレートする方法
osモジュールのwalk()関数は、ディレクトリ構造を再帰的に走査するために使用できます。この関数は、指定したパスとそのサブディレクトリとファイルのシーケンスを返します。
以下に、指定されたパスの下にあるサブフォルダとファイルを反復処理する方法を示すサンプルコードを示します。
import os
def traverse_folders(path):
for root, dirs, files in os.walk(path):
for file in files:
print(os.path.join(root, file))
os.walk(path) は、上記コードでジェネレータを返し、ジェネレータの結果をループ処理することで、現在のパスにあるすべてのサブフォルダとファイルを取得できます。ここで root は現在のフォルダパスを表し、dirs は現在のフォルダにあるサブフォルダのリストを表し、files は現在のフォルダにあるファイルのリストを表します。
ループの中で、`os.path.join()` 関数を使用してファイルの完全なパスを取得できます。上記のサンプルコードでは、`print()` 関数を使用してすべてのファイルのパスを出力していますが、これは必要に応じて処理できます。