[Python] Lister un dossier avec récursivité
Résolu
Utilisateur anonyme
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour.
Etant sous windows, je m'étais initié à deux langages de programmation :
AutoIt et Batch.
Depuis peu (4 jours ^^), je découvre le Python : intéressant, et beaucoup plus rapide que le batch.
============
Je tente donc de lister un dossier.
J'arrive à lister un dossier sans récursivité
J'arrive à lister un dossier avec récursivité :
Le problème : je n'arrive pas à lister récursivement un dossier en recherchant un fichier dont je connais un élément.
j'ai essayé ce code :
Cela ne fonctionne pas.
Comment faire pour lister récursivement un dossier, en recherchant un fichier présent, dont on connait un élément (*.txt par exemple) ?
Un gros débutant qui vous remercie de l'aide :D
++
Etant sous windows, je m'étais initié à deux langages de programmation :
AutoIt et Batch.
Depuis peu (4 jours ^^), je découvre le Python : intéressant, et beaucoup plus rapide que le batch.
============
Je tente donc de lister un dossier.
J'arrive à lister un dossier sans récursivité
import os
mydir='c:\\users\\thomas\\desktop'
print("indiquer le dossier à lister (exemple : c:\python\)")
mydir = input("")
ch = mydir[-1:]
if not ch==('\\'):
mydir=mydir+'\\'
Filetxt="ListingDirSimple.txt"
fichier = open(Filetxt, "w")
entete = ['Listindir ~~ little boy62\n', # Notez l'utilisation des
'\n' # guillemets ou de l'apostrophe
'dossier de recherche : '+mydir,
'\n\n'
]
fichier.writelines(entete)
fichier.close()
files = os.listdir(mydir)
for file in files:
mysearch=mydir+file
fichier = open(Filetxt, "a")
fichier.write(mysearch+'\n')
fichier.close()
J'arrive à lister un dossier avec récursivité :
import os
print('indiquer le dossier à lister (exemple : c:\python\)')
mydir = input('')
ch = mydir[-1:]
if not ch==('\\'):
mydir=mydir+'\\'
Filetxt='ListingDirRec_1.txt'
fichier = open(Filetxt, 'w')
entete = ['Listindir ~~ little boy62\n', # Notez l'utilisation des
'\n' # guillemets ou de l'apostrophe
'dossier de recherche : '+mydir,
'\n\n'
]
fichier.writelines(entete)
fichier.close()
for path, dirs, files in os.walk(mydir):
for filename in files :
search=os.path.join(path, filename)
fichier = open(Filetxt, 'a')
fichier.writelines(search+'\n')
fichier.close()
Le problème : je n'arrive pas à lister récursivement un dossier en recherchant un fichier dont je connais un élément.
j'ai essayé ce code :
import os
mydir = 'c:\\users\\thomas\\desktop\\python\\*.*
# ch = mydir[-1:]
# if not ch==('\\'):
# mydir=mydir+'\\'
Filetxt='ListingDirRec_1.txt'
fichier = open(Filetxt, 'w')
entete = ['Listindir ~~ little boy62\n', # Notez l'utilisation des
'\n' # guillemets ou de l'apostrophe
'dossier de recherche : '+mydir,
'\n\n'
]
fichier.writelines(entete)
fichier.close()
for path, dirs, files in os.walk(mydir):
for filename in files :
search=os.path.join(path, filename)
fichier = open(Filetxt, 'a')
fichier.writelines(search+'\n')
fichier.close()
Cela ne fonctionne pas.
Comment faire pour lister récursivement un dossier, en recherchant un fichier présent, dont on connait un élément (*.txt par exemple) ?
Un gros débutant qui vous remercie de l'aide :D
++
A voir également:
- Python lister les dossiers d'un répertoire
- Citizen code python avis - Accueil - Outils
- Répertoire téléphonique gratuit - Télécharger - Bureautique
- Lister les disques cmd - Guide
- Mettre un mot de passe sur un dossier - Guide
- Impossible de supprimer un dossier - Guide