Participer au site avec un Tip
Rechercher
 

Améliorations / Corrections

Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.

Emplacement :

Description des améliorations :

Vous êtes un professionnel et vous avez besoin d'une formation ? Sensibilisation à
l'Intelligence Artificielle
Voir le programme détaillé
Module « os » Python 3.13.2

Fonction scandir - module os

Signature de la fonction scandir

 def scandir(path='.') -> os.DirEntry

Description

La fonction scandir permet d'itérer sur les entrées d'un répertoire de manière efficace. Elle retourne un itérateur qui produit des objets os.DirEntry correspondant aux entrées du répertoire spécifié.

Un des principaux avantages de scandir par rapport à listdir est qu'il évite de charger toute la liste des entrées du répertoire en mémoire avant de les traiter. Au lieu de renvoyer simplement les noms des fichiers comme listdir, scandir produit des objets os.DirEntry qui fournissent directement des métadonnées sur chaque entrée (comme le type de fichier ou les informations de stat) sans nécessiter d'appels système supplémentaires. Cela améliore significativement les performances, en particulier sur les systèmes de fichiers volumineux ou lorsqu'on a besoin d'accéder aux attributs des fichiers.

help(os.scandir)

Return an iterator of DirEntry objects for given path.

path can be specified as either str, bytes, or a path-like object.  If path
is bytes, the names of yielded DirEntry objects will also be bytes; in
all other circumstances they will be str.

If path is None, uses the path='.'.

Paramètre

ParamètreDescription
 path : str 
Le chemin du répertoire à parcourir. Par défaut, c'est le répertoire courant.

Valeur de retour

La valeur de retour est de type os.DirEntry.

Un itérateur qui produit des objets os.DirEntry pour chaque entrée du répertoire.

Exceptions

Exemple(s) de code

 1 
 2 
 3 
 4 
 5 
import os

with os.scandir('/chemin/vers/repertoire') as entries:
    for entry in entries:
        print(entry.name, entry.is_dir())
Exemple d'utilisation de la fonction scandir.

Et voici les résultats produits par cet exemple.

$> python sample.py
fichier1.txt False
sous_repertoire True
fichier2.txt False
$> 

Existant depuis

3.5

Voir aussi

Classe os.DirEntry
Fonction os.listdir
Fonction os.walk


Vous êtes un professionnel et vous avez besoin d'une formation ? Machine Learning
avec Scikit-Learn
Voir le programme détaillé