Maison > développement back-end > Tutoriel Python > Comment puis-je obtenir efficacement une liste de sous-répertoires (tous ou simplement immédiats) en Python ?

Comment puis-je obtenir efficacement une liste de sous-répertoires (tous ou simplement immédiats) en Python ?

Mary-Kate Olsen
Libérer: 2024-12-02 22:47:12
original
179 Les gens l'ont consulté

How Can I Efficiently Get a List of Subdirectories (All or Just Immediate) in Python?

Obtention d'une liste de sous-répertoires dans le répertoire actuel : une solution Python complète

En Python, lorsque vous devez récupérer une liste complète de sous-répertoires à l’intérieur du répertoire actuel, vous pouvez utiliser plusieurs approches efficaces. Une de ces approches consiste à exploiter la puissante fonction os.walk.

La fonction os.walk prend un répertoire comme entrée et explore de manière itérative sa structure, renvoyant un triple pour chaque sous-répertoire : le nom du répertoire, ses sous-répertoires et ses fichiers. Pour récupérer uniquement les noms de sous-répertoires, vous pouvez utiliser une compréhension de liste pour extraire le premier élément de chaque triple :

subdirectories = [x[0] for x in os.walk(directory)]
Copier après la connexion

Cette méthode parcourra de manière récursive l'intégralité de l'arborescence des répertoires, fournissant une liste complète de tous les sous-répertoires, y compris ceux imbriqués dans d'autres répertoires.

Si, toutefois, votre besoin se limite à obtenir les sous-répertoires immédiats, à l'exclusion de ceux des niveaux plus profonds de l'arborescence des répertoires, il existe des méthodes alternatives qui peut vous aider à y parvenir :

  • Vous pouvez utiliser os.listdir pour répertorier tous les fichiers et répertoires du répertoire actuel, puis filtrer les répertoires à l'aide de os.path.isdir :
immediate_subdirectories = [d for d in os.listdir(".") if os.path.isdir(d)]
Copier après la connexion
  • Vous pouvez également utiliser l'expression légèrement concise os.next(os.walk('.'))[1] pour récupérer un liste des sous-répertoires immédiats, comme démontré dans le document de référence original.

En employant ces techniques, vous pouvez obtenir efficacement une liste de tous les sous-répertoires ou uniquement des sous-répertoires immédiats du répertoire actuel en Python, permettant vous permettant de naviguer et d'interagir efficacement avec la structure de répertoires selon vos besoins.

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