Heim > Artikel > Backend-Entwicklung > Wie liste ich einen Verzeichnisbaum in Python mit os.walk auf?
Auflisten eines Verzeichnisbaums in Python
Das Manipulieren von Dateien und Verzeichnissen ist eine häufige Aufgabe in der Programmierung. In Python ist es einfach, mit der Funktion os.walk eine Liste aller Dateien und Verzeichnisse in einem bestimmten Verzeichnis abzurufen.
Dateien und Verzeichnisse mit os.walk abrufen
Die Funktion os.walk verwendet einen Verzeichnispfad als Eingabe und gibt ein Generatorobjekt zurück, das für jedes gefundene Verzeichnis ein Tupel liefert. Das Tupel enthält drei Elemente:
Hier ist ein Beispiel für die Verwendung von os.walk zum Auflisten eines Verzeichnisbaums:
<code class="python">import os for dirname, dirnames, filenames in os.walk('.'): # Print path to all subdirectories first. for subdirname in dirnames: print(os.path.join(dirname, subdirname)) # Print path to all filenames. for filename in filenames: print(os.path.join(dirname, filename))</code>
Dieser Code durchläuft den Verzeichnisbaum beginnend aus dem aktuellen Verzeichnis (dargestellt durch '.') und geben Sie den Pfad zu jedem Unterverzeichnis und jeder Datei aus, auf die es stößt.
Erweiterte Verwendung
Die Funktion os.walk ermöglicht dies ebenfalls Sie können steuern, wie der Verzeichnisbaum durchlaufen wird. Sie können beispielsweise die Liste der Verzeichnisnamen während der Iteration bearbeiten, um zu verhindern, dass os.walk in bestimmte Verzeichnisse rekursiert.
Im folgenden Beispiel vermeidet der Code die Rekursion in Verzeichnisse mit dem Namen .git:
<code class="python">if '.git' in dirnames: # Don't go into any .git directories. dirnames.remove('.git')</code>
Diese Vielseitigkeit macht os.walk zu einem leistungsstarken Werkzeug für die Arbeit mit Verzeichnisbäumen in Python.
Das obige ist der detaillierte Inhalt vonWie liste ich einen Verzeichnisbaum in Python mit os.walk auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!