Behebung des Fehlers No Such File in Directory in Python
Wenn die angegebene Datei nicht im Arbeitsverzeichnis gefunden wird oder der angegebene Pfad ungültig ist, löst die Programmiersprache Python eine FileNotFoundError/IOError
-Ausnahme aus. In diesem Artikel erfahren wir, wie Sie diese Ausnahme in Python beheben können.
Beheben Sie den Fehler FileNotFoundError/IOError: no such file in directory
in Python
Eine der einfachsten und offensichtlichsten Möglichkeiten, dieses Problem zu lösen, besteht darin, sicherzustellen, dass die Datei, auf die Sie verweisen, im angegebenen Pfad oder im aktuellen Arbeitsverzeichnis vorhanden ist. Es ist auch möglich, dass der Dateiname oder der Dateipfad einen Tipp- oder Tippfehler enthält. Diese beiden sind die häufigsten Gründe, aus denen wir am Ende auf eine FileNotFoundError/IOError
-Ausnahme stoßen.
Abgesehen von den oben genannten gibt es noch einige andere Schritte, um diesen Fehler zu beheben.
- Wenn die Datei, auf die wir verweisen, im aktuellen Arbeitsverzeichnis existiert, können wir das vorinstallierte
os
-Modul verwenden, um zu überprüfen, ob die Datei existiert. Die Methodeos.listdir()
listet alle Dateien auf, die im angegebenen Verzeichnis existieren. Wir können das Vorhandensein der erforderlichen Datei überprüfen, bevor wir mit der eigentlichen Aufgabe fortfahren. Der folgende Python-Code stellt eine einfache Funktion dar, die wir für unseren Anwendungsfall verwenden können.
import os
def file_exists(filename, path=os.getcwd()):
"""
Check if the specified file exists at the specified directory
"""
files = os.listdir(path)
return filename in files
Die Methode file_exists()
gibt True
zurück, wenn die Datei gefunden wird, und False
, wenn nicht. Wenn kein Pfad zu einem Verzeichnis angegeben wird, wird das aktuelle Arbeitsverzeichnis berücksichtigt. Die Methode os.getcwd()
gibt das aktuelle Arbeitsverzeichnis zurück.
- Versuchen Sie für Dateipfade, rohe Zeichenketten anstelle von einfachen Zeichenketten zu verwenden. Wenn einfache Zeichenketten zur Darstellung eines Dateipfads verwendet werden, muss jedem Backslash oder
\
ein Escapezeichen vorangestellt oder ein anderer Backslash vorangestellt werden. Da\
in Python ein Fluchtzeichen ist, wird es ignoriert. Es muss entgangen werden, um das zu beheben. Der folgende Python-Code zeigt dasselbe.
s = r"path\to\file"
Verwandter Artikel - Python Directory
- Python Get-Home-Verzeichnis
- Alle Dateien im Verzeichnis und Unterverzeichnissen in Python auflisten
- Verzeichnis aus Pfad in Python extrahieren
- Ausführen eines Befehls für jede Datei in einem Ordner in Python
- Zählen Sie die Anzahl der Dateien in einem Verzeichnis in Python
Verwandter Artikel - Python Error
- Adresse wird bereits verwendet Fehler in Python
- AttributeError: __Exit__ in Python
- AttributeError: 'Dict'-Objekt hat kein Attribut 'Append' in Python
- AttributeError: 'NoneType'-Objekt hat kein Attribut 'Text' in Python
- AttributeError: Int-Objekt hat kein Attribut
- AttributeError: Modul Urllib hat keine Attributanforderung