Heim >Backend-Entwicklung >Python-Tutorial >Wie liste ich mit Python nur Dateien in einem Verzeichnis auf?

Wie liste ich mit Python nur Dateien in einem Verzeichnis auf?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-12-24 16:30:17752Durchsuche

How to List Only Files in a Directory Using Python?

Dateien in einem Verzeichnis in Python auflisten

Das Auflisten aller Dateien in einem Verzeichnis ist eine häufige Aufgabe in der Python-Programmierung. Um dies zu erreichen, haben Sie mehrere Möglichkeiten.

Ein Ansatz ist die Verwendung der Funktion os.listdir(). Diese Funktion gibt eine Liste aller Dateien und Verzeichnisse im angegebenen Verzeichnis zurück. Allerdings wird nicht zwischen Dateien und Verzeichnissen unterschieden. Um nur Dateien aufzulisten, können Sie die Funktion os.path.isfile() verwenden.

from os import listdir
from os.path import isfile, join

mypath = "/path/to/directory"
onlyfiles = [f for f in listdir(mypath) if isfile(join(mypath, f))]

Eine andere Möglichkeit ist die Verwendung der Funktion os.walk(). Diese Funktion liefert zwei Listen für jedes besuchte Verzeichnis: eine für Dateien und eine für Verzeichnisse.

from os import walk

mypath = "/path/to/directory"
f = []

for (dirpath, dirnames, filenames) in walk(mypath):
    f.extend(filenames)
    break

Sie können auch eine kürzere Version dieses Codes verwenden:

from os import walk

mypath = "/path/to/directory"
filenames = next(walk(mypath), (None, None, []))[2]  # [] if no file

Diese Optionen bieten verschiedene Möglichkeiten, alle Dateien in einem Verzeichnis in Python aufzulisten. Wählen Sie diejenige aus, die Ihren spezifischen Anforderungen am besten entspricht.

Das obige ist der detaillierte Inhalt vonWie liste ich mit Python nur Dateien in einem Verzeichnis auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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