IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Lister chemin d'accés fichiers dans un répertoire


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Administrateur systèmes et réseaux
    Inscrit en
    Mars 2016
    Messages
    67
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Morbihan (Bretagne)

    Informations professionnelles :
    Activité : Administrateur systèmes et réseaux
    Secteur : Service public

    Informations forums :
    Inscription : Mars 2016
    Messages : 67
    Par défaut Lister chemin d'accés fichiers dans un répertoire
    Bonjour,
    Je souhaiterai pouvoir lister dans un fichier .txt tout les chemins d'accès des fichiers dans un répertoire!
    j'ai commencer ce script
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    import os
    folder_path = "G:\Expert\03_DGST\Poubelle\DAO"
     
    for path, dirs, files in os.walk(folder_path):
         for filename in files:
             print(filename)
    Pouvez vous m'éclairer afin de modifier ce code?

    merci d'avance

  2. #2
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    import os
    folder_path = r"G:\Expert\03_DGST\Poubelle\DAO"
     
    for path, dirs, files in os.walk(folder_path):
         for filename in files:
             print(os.path.join(path, filename))
         break
    - ne pas oublier le 'r' devant le 1er guillemet du chemin à explorer, sinon les '\' seront interprétés et le chemin ne sera pas reconnu.

    - chaque 'filename' arrive avec son nom, mais pas son chemin. Il faut donc l'ajouter avec os.path.join.

    - si on ne veut que le contenu du répertoire mais pas l'exploration de ses propres sous-répertoires, il faut arrêter la boucle d'os.walk à la fin du 1er passage avec 'break'

    Autre solution apparemment plus simple avec le module 'glob'. un avantage est qu'on peut chercher certains types de fichiers (du genre "*.txt"). L'inconvénient est qu'il donne aussi les sous-répertoires qu'il faut filtrer avec une condition (du genre if os.path.isfile(...): ). Enfin, il ne donne que le contenu du répertoire sans le contenu de ses sous-répertoires.

    Autre solution plus basique avec "os.listdir(...)"

  3. #3
    Membre expérimenté Avatar de cervo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 220
    Par défaut


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    import os
     
    folder_path = r"G:\Expert\03_DGST\Poubelle\DAO"
     
    with open("liste_fichiers.txt", "w") as fichier:
        for elts in os.listdir(folder_path):
            fichier.write(elts + "\n")
    la liste du contenu du folder-path est ecrite dans le fichier liste_fichiers.txt

  4. #4
    Expert confirmé
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 486
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 486
    Billets dans le blog
    6
    Par défaut
    Juste un petit complément à:

    Citation Envoyé par cervo Voir le message
    la liste du contenu du folder-path est ecrite dans le fichier liste_fichiers.txt
    os.listdir(...) ramènera aussi les éventuels sous-répertoires qu'il faudra filtrer avec if os.path.isfile(...) ou if os.path.isdir(...).

    De plus, si on ne veut que certains fichiers, comme le fait glob.glob, on peut utiliser fnmatch.fnmatch pour ne laisser passer que les fichiers satisfaisant un motif donné (comme "*.txt").

  5. #5
    Membre expérimenté Avatar de cervo
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Décembre 2012
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Décembre 2012
    Messages : 220
    Par défaut
    @Tyrtamos,
    J'suis d'accord mais cet genre de detail c'est a lui de le decouvrir afin qu'il puisse comprendre et essayer de trouver une solution adaptee a ses besoins.

Discussions similaires

  1. Lister des fichiers dans un répertoire
    Par JD971 dans le forum Débuter
    Réponses: 8
    Dernier message: 21/06/2012, 11h02
  2. Surveiller et lister la création de fichiers dans un répertoire
    Par remyclem dans le forum Développement de jobs
    Réponses: 4
    Dernier message: 07/06/2012, 14h24
  3. [WD14] Lister les extensions de fichier dans un répertoire
    Par LuckyLuke56 dans le forum WinDev
    Réponses: 20
    Dernier message: 01/08/2011, 17h02
  4. [XML] Lister des fichiers dans des répertoires
    Par voxiz dans le forum Bibliothèques et frameworks
    Réponses: 10
    Dernier message: 16/02/2010, 16h25
  5. Lister les fichiers dans un répertoire
    Par lohot dans le forum Scripts/Batch
    Réponses: 4
    Dernier message: 30/03/2008, 12h55

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo