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>
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>
Ü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>
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!