Comment puis-je personnaliser la sortie de os.walk() pour visualiser une structure de répertoires récursive en Python ?

Patricia Arquette
Libérer: 2024-11-06 10:03:02
original
555 Les gens l'ont consulté

How can I customize the output of os.walk() to visualize a recursive directory structure in Python?

Traversée récursive de répertoires avec os.walk() en Python

En Python, la fonction os.walk() est un outil puissant pour parcourir récursivement les répertoires et sous-répertoires. En tirant parti de ses fonctionnalités, vous pouvez naviguer dans votre système de fichiers et accéder efficacement aux fichiers et répertoires.

Utiliser os.walk() pour imprimer les structures de répertoires

Considérez ce qui suit code :

import os

for root, dirs, files in os.walk("."):
    print(root)
    print("")
    for items in fnmatch.filter(files, "*"):
        print("..." + items)
    print("")
Copier après la connexion

Ce code parcourra le répertoire actuel et imprimera les répertoires et les fichiers qu'il contient. Cependant, la sortie ne sera pas au format souhaité : les répertoires et les fichiers seront répertoriés de la même manière.

Personnalisation de la sortie de traversée de répertoire

Pour imprimer le répertoire et structure de fichier comme vous le souhaitez, telle que :

A
---a.txt
---b.txt
---B
------c.out
Copier après la connexion

où A et B sont des répertoires et le reste sont des fichiers, vous pouvez modifier le code comme suit :

import os

for root, dirs, files in os.walk("."):
    path = root.split(os.sep)
    print((len(path) - 1) * '---', os.path.basename(root))
    for file in files:
        print(len(path) * '---', file)
Copier après la connexion

Ce code modifié :

  • Divise le chemin en une liste à l'aide du séparateur os.sep, qui représente le séparateur de répertoire sur le système d'exploitation actuel.
  • Calcule le niveau d'indentation pour chaque entrée en fonction du nombre de composants de chemin moins 1.
  • Utilise un combinaison de l'indentation et du nom de base du répertoire ou du fichier pour afficher la structure dans le format souhaité.

En ajustant l'indentation et en utilisant la fonction de nom de base, vous pouvez personnaliser la sortie en fonction de vos besoins spécifiques. Cette technique vous permet de visualiser la hiérarchie des répertoires et d'accéder plus facilement aux fichiers et 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!

source:php.cn
Déclaration de ce site Web
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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!