So verwenden Sie das Glob-Modul von Python, um Dateien nach Mustern zu finden
Das Modul glob
in Python ist ein leistungsstarkes Tool zum Auffinden von Dateien und Verzeichnissen, die einem bestimmten Muster entsprechen. Es ist besonders nützlich, wenn Sie in einem Verzeichnis nach Dateien mit bestimmten Erweiterungen oder Namen suchen müssen. Dieser Artikel führt Sie durch die Verwendung des Moduls glob
zum effizienten Auffinden von Dateien.
Einführung in das Modul glob
Das Modul glob
bietet eine Möglichkeit, Dateien und Verzeichnisse mit Platzhaltern im Unix-Shell-Stil aufzulisten. Dies ist nützlich für Aufgaben wie Dateisuche, Stapelverarbeitung und mehr. Das Modul enthält Funktionen, mit denen Sie Dateinamen mit Mustern abgleichen können, was die Dateiverwaltung vereinfacht.
Grundlegende Verwendung von glob
Um das Modul glob
zu verwenden, müssen Sie es importieren und dann die Funktion glob.glob()
verwenden, um Dateien zu finden, die einem Muster entsprechen. Die von Ihnen verwendeten Muster können Platzhalter wie *
(entspricht einer beliebigen Anzahl von Zeichen) und ?
(entspricht einem einzelnen Zeichen) enthalten.
Beispiele
Suchen nach Dateien mit einer bestimmten Erweiterung
Um beispielsweise alle Dateien mit der Erweiterung .txt
in einem Verzeichnis zu finden, können Sie Folgendes verwenden:
import glob
# Find all .txt files in the current directory
txt_files = glob.glob('*.txt')
print(txt_files)
Suchen nach Dateien in einem Unterverzeichnis
Um alle Dateien mit einer bestimmten Erweiterung in einem Unterverzeichnis zu finden, geben Sie das Unterverzeichnis im Muster an:
import glob
# Find all .jpg files in the 'images' subdirectory
jpg_files = glob.glob('images/*.jpg')
print(jpg_files)
Platzhalter verwenden
Platzhalter können Ihnen dabei helfen, einen größeren Bereich von Dateien abzugleichen. So finden Sie beispielsweise alle Textdateien, die mit "report" beginnen:
import glob
# Find all files starting with 'report' and ending with .txt
report_files = glob.glob('report*.txt')
print(report_files)
Suchen nach Dateien mit mehreren Erweiterungen
Sie können glob
auch verwenden, um Dateien mit mehreren Erweiterungen zu finden, indem Sie ein Muster verwenden, das mehrere Platzhalterübereinstimmungen enthält:
import glob
# Find all .txt and .md files
files = glob.glob('*.txt') + glob.glob('*.md')
print(files)
Erweiterte Nutzung
Zusätzlich zu einfachen Mustern unterstützt das Modul glob
auch komplexere Muster. Sie können beispielsweise Muster wie **
verwenden, um Verzeichnisse rekursiv zu durchsuchen.
Rekursive Suche
Um rekursiv in allen Unterverzeichnissen nach Dateien zu suchen, verwenden Sie das Muster **
zusammen mit dem Argument recursive=True
:
import glob
# Find all .py files in the current directory and subdirectories
py_files = glob.glob('**/*.py', recursive=True)
print(py_files)
Abschluss
Das Modul glob
ist ein wichtiges Tool zur Verwaltung von Dateien in Python, mit dem Sie ganz einfach anhand von Mustern nach Dateien suchen können. Egal, ob Sie mit bestimmten Dateitypen arbeiten, Verzeichnisse durchsuchen oder komplexe Suchvorgänge durchführen, glob
bietet eine einfache und effektive Lösung.