Python でのフォルダーの内容の再帰的読み取り
Python では、ディレクトリを再帰的に走査してテキスト ファイルを読み取ると、問題が発生する可能性があります。よくある問題は、単一のディレクトリ レベルでのみ機能するコードです。
os.walk 関数を理解する
Python の再帰的フォルダー トラバーサルの核心は OS にあります。 .walk()関数。指定されたディレクトリとそのサブディレクトリを反復処理し、root、subdirs、files の 3 つの値を返します。
フォルダー トラバーサルの最適化
ディレクトリを再帰的にトラバースするには、 os.walk() によって返されるサブディレクトリのリストを反復処理する必要があります。サブディレクトリごとに、os.walk() を再帰的に呼び出して、その内容を処理できます。
改良された Python コード
サンプル コードは、複数のディレクトリを処理するように変更できます。レベル:
<code class="python">import os import sys walk_dir = sys.argv[1] for root, subdirs, files in os.walk(walk_dir): for subdir in subdirs: # Process subdirectory: call os.walk() recursively for subdir for sub_subdir, sub_subfiles, _ in os.walk(os.path.join(root, subdir)): # Process subdirectories and files in subdirectory</code>
追加のベスト プラクティス
以上がos.walk() 関数を使用して Python でフォルダーの内容を再帰的に読み取る方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。