Comment vérifier qu'un fichier existe, en Python ?

Le langage Python possède des apis permettant de gérer les fichiers. L'API os.path fournit des méthodes permettant de vérifier qu'un fichier existe ou non.

Le langage Python possède des apis permettant de gérer les fichiers. L'API os.path fournit des méthodes permettant de vérifier qu'un fichier existe ou non. Les méthodes que l'on peut utiliser sont exists() et isfile().

os.path.exists(chemin) //Cette méthode retourne true si le message spécifié en paramètre existe bien.
os.path.isfile(fichier) //Cette méthode retourne true si le chemin spécifié correspond à un fichier.

Ces deux méthodes posent cependant problème en termes de sécurité. En effet, durant le laps de temps entre le test de l'existence du fichier et son ouverture avec la méthode open(), un script malveillant peut en parallèle créer ou détruire le fichier et ainsi tromper le programme. Il est donc préférable d'utiliser la fonction open() en l'encapsulant dans une directive try(), qui génère un message d'erreur si le fichier n'a pas pu être ouvert.

try:
 with open('fichier'): pass
except IOError:
 print Erreur! Le fichier n' pas pu être ouvert

A moins que vous ne soyez sûr que votre script n'ait pas de gros besoins en termes de sécurité (utilisation en local par exemple), il est recommandé d'utiliser la dernière méthode.

Python