Je cherche un moyen de faire une marche non récursive os.walk()
, tout comme os.listdir()
fonctionne. Mais je dois retourner de la même manière les rendements de os.walk()
. Une idée ?
Merci d'avance.
Je cherche un moyen de faire une marche non récursive os.walk()
, tout comme os.listdir()
fonctionne. Mais je dois retourner de la même manière les rendements de os.walk()
. Une idée ?
Merci d'avance.
Ajouter un break
après les noms de fichiers pour la boucle :
for root, dirs, filenames in os.walk(workdir):
for fileName in filenames:
print (fileName)
break #prevent descending into subfolders
Cela fonctionne parce que (par défaut) os.walk
répertorie d'abord les fichiers dans le dossier demandé, puis va dans les sous-dossiers.
Ma solution un peu plus paramétrée serait la suivante :
for root, dirs, files in os.walk(path):
if not recursive:
while len(dirs) > 0:
dirs.pop()
//some fency code here using generated list
Éditer : correctifs, si/pendant le problème. Merci, @Dirk van Oosterbosch :}
Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.