os.walkを使ってPythonでディレクトリを走査する方法は?
os.walk()関数を使うと、ディレクトリとそのサブディレクトリを再帰的に走査することができます。os.walk()関数は、現在のディレクトリのパス、現在のディレクトリ内の全てのサブディレクトリ名のリスト、現在のディレクトリ内の全てのファイル名のリストの3つの要素を含むタプルを生成するジェネレータオブジェクトを返します。
以下は、os.walk() 関数でディレクトリを巡回する例です。
import os
def traverse_directory(directory):
for root, dirs, files in os.walk(directory):
for file in files:
file_path = os.path.join(root, file)
print(file_path)
# 遍历当前目录及其子目录
traverse_directory('.')
上の例では、traverse_directory()関数は os.walk() 関数を使ってカレントディレクトリとそのサブディレクトリを辿り、各ファイルのパスを出力します。 os.path.join() 関数はディレクトリパスとファイル名を連結して完全なファイルパスにします。
たとえばtraverse_directory()関数のprint(file_path)の部分を、ファイルのコピーや移動など、あなたが実行する必要があるアクションに置き換えることができます。