Heim > Backend-Entwicklung > Python-Tutorial > So finden Sie Dateien in Python: Eine umfassende Anleitung zu os.walk und File Matching.

So finden Sie Dateien in Python: Eine umfassende Anleitung zu os.walk und File Matching.

Mary-Kate Olsen
Freigeben: 2024-10-29 09:54:30
Original
573 Leute haben es durchsucht

How to Find Files in Python: A Comprehensive Guide to os.walk and File Matching.

Dateien in Python finden

Das Suchen nach bestimmten Dateien in einem Verzeichnisbaum ist eine häufige Aufgabe in der Programmierung. In Python kann dies mit der Funktion os.walk erreicht werden.

Verwendung von os.walk

os.walk ist ein leistungsstarkes Werkzeug zum Durchlaufen von Verzeichnissen. Es verwendet einen Pfad als Argument und generiert ein Tupel für jedes gefundene Verzeichnis, Unterverzeichnis und jede gefundene Datei. Das erste Element des Tupels ist der absolute Pfad zum Verzeichnis, das zweite Element ist eine Liste von Unterverzeichnissen und das dritte Element ist eine Liste von Dateien.

Eine einzelne Datei finden

Um eine bestimmte Datei in einem Verzeichnisbaum zu finden, können Sie die Ergebnisse von os.walk durchlaufen. Wenn Sie die Datei gefunden haben, können Sie ihren Pfad zurückgeben:

<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>
Nach dem Login kopieren

Alle Übereinstimmungen finden

Wenn Sie alle Dateien finden müssen, die einem bestimmten Namen entsprechen, können Sie dies tun Ändern Sie find, um die Ergebnisse in einer Liste zu sammeln:

<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>
Nach dem Login kopieren

Übereinstimmende Dateimuster

Sie können auch fnmatch verwenden, um nach Dateien zu suchen, die einem Muster entsprechen:

<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>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonSo finden Sie Dateien in Python: Eine umfassende Anleitung zu os.walk und File Matching.. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage