Avec python il est possible d'obtenir une liste des sous-répertoires composant un répertoire donné à l'aide de la méthode walk. A titre d'exemple considérons la configuration suivante:
FolderRoot:
-> F1:
-> F11
-> F12
-> F2
-> F3
Si on se place au niveau du répertoire "FolderRoot" et qu'on lance python puis la commande [x[0] for x in os.walk('FolderRoot')] on obtient bien la liste de tous les répertoires dans FolderRoot avec FolderRoot inclus.
>>> import os
>>> list_of_subdirectories = [x[0] for x in os.walk('FolderRoot')]
>>> list_of_subdirectories
['FolderRoot', 'FolderRoot/F1', 'FolderRoot/F1/F11', 'FolderRoot/F1/F12', 'FolderRoot/F2', 'FolderRoot/F3']
>>> len(list_of_subdirectories)
6
Il est aussi possible uniquement les répertoires sous 'FolderRoot' comme ceci:
>>> os.walk('FolderRoot').next()[1]
>>> ['F1', 'F2', 'F3']
Recherches associées
Liens | Site |
---|---|
os — Miscellaneous operating system interfaces | python doc |
Python os.walk() Method | Tutorial Point |
Using os.walk() to recursively traverse directories in Python | stackoverflow |
Getting a list of all subdirectories in the current directory | stackoverflow |
Filtering os.walk() dirs and files | stackoverflow |