Boucle de fichiers dans un répertoire en Python
-
Boucler les fichiers d’un répertoire en Python en utilisant la méthode
os.listdir()
-
Bouclez les fichiers d’un répertoire en Python en utilisant la méthode
pathlib.path().glob()
-
Bouclez les fichiers dans un répertoire en Python en utilisant la méthode
os.walk()
-
Bouclez les fichiers d’un répertoire en Python en utilisant la méthode
iglob()
Ce tutoriel explique les différentes façons de boucler les fichiers dans un répertoire en Python. Nous devons rechercher un fichier dans un répertoire pour mettre en œuvre des fonctionnalités telles que le partage de fichiers, la visualisation de fichiers ou le chargement de fichiers afin d’effectuer une action sur les données qui y sont enregistrées.
Supposons que nous ayons un nom de fichier et que nous devions lire les données de ce fichier, nous avons besoin d’une méthode pour parcourir les fichiers du répertoire afin de trouver le fichier dont nous avons besoin. Les différentes méthodes utilisées pour boucler les fichiers d’un répertoire en Python sont expliquées ci-dessous.
Boucler les fichiers d’un répertoire en Python en utilisant la méthode os.listdir()
La méthode listdir()
du module os
prend le chemin du répertoire en entrée et retourne une liste de tous les fichiers de ce répertoire. Comme nous voulons trouver le fichier spécifique dans le répertoire, nous devrons boucler à travers les noms des fichiers pour trouver le fichier requis. L’exemple de code ci-dessous démontre comment trouver un fichier spécifique en itérant à travers le fichier en utilisant la méthode listdir()
en Python.
import os
files = os.listdir("Desktop/myFolder")
myfile = "filename.txt"
for filename in files:
if filename == myfile:
continue
Bouclez les fichiers d’un répertoire en Python en utilisant la méthode pathlib.path().glob()
La méthode path()
du module pathlib
prend la chaîne de chemin du répertoire en entrée et renvoie la liste de tous les chemins des fichiers dans le répertoire et les sous-répertoires.
Supposons que le fichier que nous voulons trouver est un fichier .txt
, nous pouvons obtenir les chemins de tous les fichiers .txt
en utilisant la méthode path().glob()
. L’exemple de code ci-dessous montre comment boucler tous les fichiers .txt
dans un répertoire en utilisant la méthode path
en Python.
from pathlib import Path
pathlist = Path("Desktop/myFolder").glob("**/*.txt")
myfile = "filename.txt"
for path in pathlist:
if path.name == myfile:
continue
Le modèle **/*.txt
renvoie tous les fichiers avec l’extension txt
dans le dossier courant et ses sous-dossiers. Le motif path.name
renvoie le nom du fichier seulement mais pas le chemin complet.
Bouclez les fichiers dans un répertoire en Python en utilisant la méthode os.walk()
La méthode walk()
du module os
prend également la chaîne du chemin du répertoire en entrée et retourne le chemin du répertoire racine sous forme de chaîne, la liste des sous-répertoires, et la liste de tous les fichiers du répertoire courant et de ses sous-répertoires.
Pour trouver le fichier portant le nom filename.txt
, nous pouvons d’abord récupérer tous les fichiers du répertoire et ensuite les parcourir en boucle pour obtenir le fichier souhaité. L’exemple de code ci-dessous montre comment trouver un fichier en bouclant à travers les fichiers d’un répertoire.
import os
myfile = "filename.txt"
for root, dirs, files in os.walk("Desktop/myFolder"):
for file in files:
if file == myfile:
print(file)
Bouclez les fichiers d’un répertoire en Python en utilisant la méthode iglob()
La méthode iglob()
du module glob()
prend en entrée le chemin du répertoire et l’extension du fichier requis et renvoie le chemin de tous les fichiers avec la même extension. L’exemple de code ci-dessous montre comment boucler les fichiers dans un répertoire et trouver le fichier requis en Python en utilisant la méthode iglob()
.
import glob
for filepath in glob.iglob("drive/test/*.txt"):
if filepath.endswith("/filename.txt"):
print(filepath)
Article connexe - Python File
- Comment obtenir tous les fichiers d'un répertoire
- Comment ajouter du texte à un fichier en Python
- Comment vérifier si un fichier existe en Python
- Comment trouver des fichiers avec une certaine extension seulement en Python
- Comment lire des lignes spécifiques d'un fichier en Python
- Lire un fichier texte et imprimer son contenu en Python