Accéder au contenu principal

Comment vérifier l'existence d'un fichier en Python

Apprenez à vérifier si un fichier existe en Python dans ce tutoriel simple.
Actualisé 14 nov. 2024

En Python, vérifier si un fichier existe avant de tenter de l'utiliser est une tâche courante, en particulier si vous effectuez par programme des opérations sur les fichiers, comme la lecture ou l'écriture de données sur un grand nombre de fichiers. Dans ce tutoriel, je vais vous guider à travers trois méthodes efficaces pour vérifier si un fichier existe en Python.

Trois méthodes pour vérifier l'existence d'un fichier en Python

Il existe plusieurs façons de vérifier l'existence d'un fichier en Python, chacune adaptée à différents scénarios et styles de programmation. Vous trouverez ci-dessous trois méthodes courantes qui peuvent être utilisées pour vérifier l'existence de fichiers.

Prérequis : Comprendre le répertoire courant

Tout au long de ce tutoriel, nous verrons comment vérifier si le fichier my_file.txt sera stocké dans le dossier my_data. Mais avant cela, il est essentiel de comprendre à quoi ressemble la structure actuelle de vos dossiers afin de pouvoir naviguer efficacement dans le répertoire. Voici quelques fonctions standard pour vous aider à naviguer dans vos dossiers et répertoires.

Obtenez votre répertoire actuel en utilisant os.getcwd()

Pour obtenir le répertoire de travail actuel en Python, vous pouvez utiliser la fonction getcwd() du paquetage os. Cette fonction renvoie une chaîne de caractères représentant le chemin du répertoire de travail actuel. Par exemple :

import os

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

Listez tous les fichiers et dossiers de votre répertoire à l'aide de la fonction os.listdir()

Pour dresser la liste de tous les dossiers et fichiers du répertoire actuel en Python, vous pouvez utiliser la fonction listdir() du paquetage os. Cette fonction renvoie une liste contenant les noms des entrées du répertoire indiqué par path. Par exemple, mon répertoire actuel contient à la fois le dossier my_data et un ensemble de données appelé airbnb_data.csv. Ici, j'utilise listdir() pour les énumérer :

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'] 

Méthode 1 : L'utilisation de la os.path.exists() function

Maintenant que nous avons appris à naviguer dans les répertoires, vérifions si des fichiers existent ! La fonction os.path.exists() du module os est un moyen simple de vérifier l'existence d'un fichier ou d'un répertoire. Il est simple à utiliser et à comprendre. Ici, j'utilise une instruction if qui renvoie “This file exists.” si le fichier my_file.txt est présent dans my_data, et ”This file does not exist” dans le cas contraire.

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.")

Méthode 2 : L'utilisation de la pathlib.Path.exists() function

Pour une approche plus moderne et orientée objet, la méthode Path.exists() du paquet pathlib vous permet de travailler avec des chemins de fichiers de manière plus intuitive, en s'intégrant de manière transparente aux fonctionnalités de traitement de fichiers de Python.

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.")

Méthode 3 : L'utilisation de la try-except blocage de l'ouverture du fichier

Une autre méthode consiste à utiliser un bloc try-except en combinaison avec la fonction open() pour ouvrir le fichier tout en vérifiant s'il existe. Cette méthode combine efficacement le contrôle d'existence et l'accès aux fichiers.

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.")

Conclusion

En conclusion, Python propose plusieurs méthodes pour vérifier si un fichier existe dans un répertoire. La méthode choisie dépend de votre style de programmation et de votre cas d'utilisation ! Pour en savoir plus sur l'apprentissage de Python, consultez notre tutoriel Comment sortir de Python, ou Comment convertir une chaîne de caractères en un nombre entier en Python.

Sujets

Poursuivez votre voyage en Python dès aujourd'hui !

Cursus

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.
Afficher les détailsRight Arrow
Commencer le cours
Voir plusRight Arrow
Apparenté

blog

Les 20 meilleures questions d'entretien pour les flocons de neige, à tous les niveaux

Vous êtes actuellement à la recherche d'un emploi qui utilise Snowflake ? Préparez-vous à répondre à ces 20 questions d'entretien sur le flocon de neige pour décrocher le poste !
Nisha Arya Ahmed's photo

Nisha Arya Ahmed

15 min

blog

Célébration de Saghar Hazinyar : Une boursière de DataCamp Donates et une diplômée de Code to Inspire

Découvrez le parcours inspirant de Saghar Hazinyar, diplômée de Code to Inspire, qui a surmonté les défis en Afghanistan et s'est épanouie grâce à une bourse de DataCamp Donates.
Fereshteh Forough's photo

Fereshteh Forough

4 min

blog

2022-2023 Rapport annuel DataCamp Classrooms

À l'aube de la nouvelle année scolaire, DataCamp Classrooms est plus motivé que jamais pour démocratiser l'apprentissage des données, avec plus de 7 650 nouveaux Classrooms ajoutés au cours des 12 derniers mois.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

8 min

blog

Q2 2023 DataCamp Donates Digest

DataCamp Donates a offert plus de 20k bourses d'études à nos partenaires à but non lucratif au deuxième trimestre 2023. Découvrez comment des apprenants défavorisés et assidus ont transformé ces opportunités en réussites professionnelles qui ont changé leur vie.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

blog

Nous avons fait don de bourses DataCamp Premium à un million de personnes, et ce n'est pas fini.

Réparties entre nos deux programmes d'impact social, DataCamp Classrooms et #DCDonates, les bourses offrent un accès illimité à tout ce que DataCamp Premium a à offrir.
Nathaniel Taylor-Leach's photo

Nathaniel Taylor-Leach

Voir plusVoir plus