Direkt zum Inhalt

Wie prüfe ich, ob eine Datei in Python vorhanden ist?

In diesem einfachen Tutorial lernst du, wie du in Python prüfen kannst, ob eine Datei existiert.
Aktualisierte 16. Jan. 2025

In Python ist es üblich zu prüfen, ob eine Datei vorhanden ist, bevor du sie benutzen kannst, vor allem, wenn du Dateioperationen wie das Lesen oder Schreiben von Daten in einer großen Anzahl von Dateien programmatisch durchführst. In diesem Lernprogramm zeige ich dir drei effektive Methoden, um zu prüfen, ob eine Datei in Python existiert.

Drei Methoden, um zu prüfen, ob eine Datei in Python existiert

Es gibt verschiedene Möglichkeiten, das Vorhandensein einer Datei in Python zu überprüfen, die jeweils für unterschiedliche Szenarien und Programmierstile geeignet sind. Im Folgenden werden wir drei gängige Methoden untersuchen, mit denen du prüfen kannst, ob Dateien existieren.

Voraussetzungen: Das aktuelle Verzeichnis verstehen

Im Laufe dieses Tutorials werde ich mir ansehen, wie man überprüfen kann, ob die Datei my_file.txt im Ordner my_data gespeichert wird. Bevor du das tust, ist es jedoch wichtig, dass du weißt, wie deine aktuelle Ordnerstruktur aussieht, damit du effektiv durch das Verzeichnis navigieren kannst. Hier sind ein paar Standardfunktionen, die dir helfen, durch deine Ordner und Verzeichnisse zu navigieren.

Hol dir dein aktuelles Verzeichnis mit os.getcwd()

Um das aktuelle Arbeitsverzeichnis in Python zu ermitteln, kannst du die Funktion getcwd() aus dem Paket os verwenden. Diese Funktion gibt einen String zurück, der den Pfad des aktuellen Arbeitsverzeichnisses angibt. Zum Beispiel:

import os

# Get the current working directory
current_directory = os.getcwd()
print("The current working directory is:", current_directory)

Listen Sie alle Dateien und Ordner in Ihrem Verzeichnis mit os.listdir()

Um alle Ordner und Dateien im aktuellen Verzeichnis in Python aufzulisten, kannst du die Funktion listdir() aus dem Paket os verwenden. Diese Funktion gibt eine Liste mit den Namen der Einträge in dem durch path angegebenen Verzeichnis zurück. Mein aktuelles Verzeichnis enthält zum Beispiel sowohl den Ordner my_data als auch einen Datensatz namens airbnb_data.csv. Hier verwende ich listdir(), um sie aufzulisten:

import os

# Get the current working directory
current_directory = os.getcwd()

# List all files and folders in the current directory
entries = os.listdir(current_directory)
print(entries) # Returns ['my_data, 'airbnb_data.csv'] 

Methode 1: Mit dem os.path.exists() Funktion

Jetzt, wo wir gelernt haben, wie man in Verzeichnissen navigiert, wollen wir überprüfen, ob es Dateien gibt! Die Funktion os.path.exists() des Moduls os ist eine einfache Möglichkeit, die Existenz einer Datei oder eines Verzeichnisses zu überprüfen. Es ist einfach zu bedienen und zu verstehen. Hier verwende ich eine if-Anweisung, die “This file exists.” zurückgibt, wenn die Datei my_file.txt in my_data vorhanden ist, und ansonsten ”This file does not exist”.

import os

# Specify the file path
file_path = 'my_data/my_file.txt'

# Check if the file exists
if os.path.exists(file_path):
   print("The file exists.")
else:
   print("The file does not exist.")

Methode 2: Mit dem pathlib.Path.exists() Funktion

Für einen moderneren und objektorientierten Ansatz bietet das Paket pathlib mit der Methode Path.exists() die Möglichkeit, intuitiv mit Dateipfaden zu arbeiten, und fügt sich nahtlos in die Dateiverarbeitungsfunktionen von Python ein.

from pathlib import Path

# Create a Path object
file_path = Path('my_data/my_file.txt')

# Check if the file exists
if file_path.exists():
   print("The file exists.")
else:
   print("The file does not exist.")

Methode 3: Mit dem try-except Block mit Datei-Öffnung

Eine andere Methode ist die Verwendung eines try-except Blocks in Kombination mit der open() Funktion, um die Datei zu öffnen und zu prüfen, ob sie existiert. Diese Methode kombiniert effizient die Existenzprüfung mit dem Dateizugriff.

try:
    # Attempt to open the file
    with open('my_data/my_file.txt', 'r') as file:
        print("The file exists.")
except FileNotFoundError:
    print("The file does not exist.")

Fazit

Zusammenfassend lässt sich sagen, dass Python mehrere Methoden bietet, um zu prüfen, ob eine Datei in einem Verzeichnis existiert. Welche Methode du wählst, hängt von deinem Programmierstil und deinem Anwendungsfall ab! Wenn du mehr über Python lernen möchtest, schau dir unser Tutorial How to Exit Python oder How to Convert a String to an Integer in Python an.

Themen

Setze deine Python-Reise heute fort!

Lernpfad

Python Programming

19hrs hr
Level-up your programming skills. Learn how to optimize code, write functions and tests, and use best-practice software engineering techniques.
Siehe DetailsRight Arrow
Kurs starten
Mehr anzeigenRight Arrow
Verwandt

Der Blog

Die 20 besten Snowflake-Interview-Fragen für alle Niveaus

Bist du gerade auf der Suche nach einem Job, der Snowflake nutzt? Bereite dich mit diesen 20 besten Snowflake-Interview-Fragen vor, damit du den Job bekommst!
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

20 Min.

Der Blog

Lehrer/innen und Schüler/innen erhalten das Premium DataCamp kostenlos für ihre gesamte akademische Laufbahn

Keine Hacks, keine Tricks. Schüler/innen und Lehrer/innen, lest weiter, um zu erfahren, wie ihr die Datenerziehung, die euch zusteht, kostenlos bekommen könnt.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

4 Min.

Der Blog

Die 32 besten AWS-Interview-Fragen und Antworten für 2024

Ein kompletter Leitfaden zur Erkundung der grundlegenden, mittleren und fortgeschrittenen AWS-Interview-Fragen, zusammen mit Fragen, die auf realen Situationen basieren. Es deckt alle Bereiche ab und sorgt so für eine abgerundete Vorbereitungsstrategie.
Zoumana Keita 's photo

Zoumana Keita

30 Min.

Der Blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates hat im zweiten Quartal 2023 über 20.000 Stipendien an unsere gemeinnützigen Partner vergeben. Erfahre, wie fleißige benachteiligte Lernende diese Chancen in lebensverändernde berufliche Erfolge verwandelt haben.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

Der Blog

2022-2023 DataCamp Classrooms Jahresbericht

Zu Beginn des neuen Schuljahres ist DataCamp Classrooms motivierter denn je, das Lernen mit Daten zu demokratisieren. In den letzten 12 Monaten sind über 7.650 neue Klassenzimmer hinzugekommen.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 Min.

Der Blog

Top 30 Generative KI Interview Fragen und Antworten für 2024

Dieser Blog bietet eine umfassende Sammlung von Fragen und Antworten zu generativen KI-Interviews, die von grundlegenden Konzepten bis hin zu fortgeschrittenen Themen reichen.
Hesam Sheikh Hassani's photo

Hesam Sheikh Hassani

15 Min.

Mehr anzeigenMehr anzeigen