Maison  >  Article  >  développement back-end  >  Comment obtenir une liste d'arborescence de répertoires en Python à l'aide de os.walk() ?

Comment obtenir une liste d'arborescence de répertoires en Python à l'aide de os.walk() ?

Linda Hamilton
Linda Hamiltonoriginal
2024-10-31 16:58:02293parcourir

How to Obtain a Directory-Tree Listing in Python Using os.walk()?

Liste des arborescences de répertoires en Python

Obtenir une liste complète de tous les fichiers et répertoires dans un répertoire spécifié est une tâche cruciale dans la programmation Python . Cet article explore une méthode très efficace pour parcourir et récupérer une arborescence de répertoires.

La fonction os.walk() fournit un moyen puissant de parcourir une structure de répertoires. Il génère un tuple pour chaque répertoire rencontré lors de la traversée, contenant le nom du répertoire, une liste de sous-répertoires et une liste de fichiers dans ce répertoire.

Implémentation du code :

Le code Python suivant montre comment utiliser os.walk() pour obtenir une liste d'arborescence de répertoires :

<code class="python">import os

for dirname, dirnames, filenames in os.walk('.'):
    # Print paths to all subdirectories first.
    for subdirname in dirnames:
        print(os.path.join(dirname, subdirname))

    # Print paths to all filenames.
    for filename in filenames:
        print(os.path.join(dirname, filename))

    # Advanced usage: Manipulating the 'dirnames' list
    if '.git' in dirnames:
        # Prevent os.walk() from recursing into .git directories
        dirnames.remove('.git')</code>

Explication :

Cet extrait de code parcourt l'arborescence des répertoires en commençant par le répertoire de travail actuel ('.'). Pour chaque répertoire rencontré, il imprime les chemins d'accès à tous les sous-répertoires et fichiers qu'il contient. La fonction os.path.join() est utilisée pour concaténer les noms de répertoire et de fichier pour créer les chemins complets.

La section « Utilisation avancée » illustre comment manipuler la liste des noms de répertoire. Dans cet exemple, si le sous-répertoire .git est rencontré, il est supprimé de la liste des noms de répertoires pour empêcher os.walk() de pénétrer dans ce répertoire et son contenu.

En employant cette méthode, vous pouvez obtenir efficacement une liste détaillée et hiérarchique de tous les fichiers et répertoires dans un répertoire spécifié en Python, fournissant des informations précieuses sur la structure des répertoires.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn