ホームページ  >  記事  >  バックエンド開発  >  Python でファイルを効率的に検索する方法: os.walk とパターン マッチングのガイド

Python でファイルを効率的に検索する方法: os.walk とパターン マッチングのガイド

Patricia Arquette
Patricia Arquetteオリジナル
2024-10-28 08:35:29941ブラウズ

 How to Efficiently Find Files in Python: A Guide to os.walk and Pattern Matching

Python でのファイルの検索

ファイルの場所を特定するのは、特にファイルの場所が異なるユーザー マシン間で異なる場合に困難になることがあります。心配しないでください。Python は、os.walk 関数というこの難題に対する解決策を提供します。

os.walk() は 2 つの引数を取ります。1 つは検索するディレクトリのパス、もう 1 つはディレクトリごとに呼び出される関数です。

最初に一致するファイルを見つける

指定された名前に一致する最初のファイルを見つけるには、次のコードを使用します:

<code class="python">import os

def find(name, path):
    for root, dirs, files in os.walk(path):
        if name in files:
            return os.path.join(root, name)</code>

すべての一致の検索

特定の名前に一致するすべてのファイルを検索するには、次のコードを使用します:

<code class="python">def find_all(name, path):
    result = []
    for root, dirs, files in os.walk(path):
        if name in files:
            result.append(os.path.join(root, name))
    return result</code>

一致パターン

パターンに基づいてファイルを照合するには、次のスニペットを使用します:

<code class="python">import os, fnmatch
def find(pattern, path):
    result = []
    for root, dirs, files in os.walk(path):
        for name in files:
            if fnmatch.fnmatch(name, pattern):
                result.append(os.path.join(root, name))
    return result

find('*.txt', '/path/to/dir')</code>

これらのメソッドを使用すると、任意のディレクトリ内のファイルを簡単に見つけることができ、ファイルの種類に関係なくファイル管理が簡単になります。場所。

以上がPython でファイルを効率的に検索する方法: os.walk とパターン マッチングのガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。