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 :

Problème concernant le total d'un résultat


Sujet :

Python

  1. #1
    Candidat au Club
    Homme Profil pro
    Passioné
    Inscrit en
    Février 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Passioné

    Informations forums :
    Inscription : Février 2014
    Messages : 11
    Points : 3
    Points
    3
    Par défaut Problème concernant le total d'un résultat
    Bonjour à tous

    Après avoir "flirté" quelques mois avec le langage Html, je me suis mis à Python (3.4), depuis un mois environ, dont je dois connaitre les bases pour l'année prochaine, dans mon cursus universitaire.
    Je me suis documenté sur le web, ainsi que par le biais de bouquin que je me suis acheté.
    A force de suivre les scripts, j'ai voulu m'en créer quelques-uns afin de voir si j'en étais capable dans un premier temps, mais aussi pour voir si j'avais bien compris la structure.

    Voulant à présent préparer mon projet, permettant de scanner un périphérique de stockage afin de trouver divers fichiers (comme un antivirus en quelque sorte...) je rencontre deux difficultés.
    J'ai réussi à scanner la racine d'un disque dur, cependant, je ne parviens pas à continuer la recherche à travers les sous dossiers.

    Second problème, j'ai voulu en affichant les fichiers trouvés, en faire un résultat à la fin du diagnostic, cependant, le résultat ne correspond pas à la recherche effectuée. (par exemple 15 fichiers trouvés, et un résultat de 13).

    Je ne comprends pas vraiment ou j'ai pu pêcher, j'ai beau ressasser et vérifier sur des exemples pouvant se rapprocher du script, mais rien n'y fait...
    C'est pour cela que j'ose sortir de mon trou, depuis que je suis ce forum, et d'oser me manifester auprès de vous.
    Une bonne âme pourrait elle m'aiguiller afin d'éclairer ma lanterne, s'il vous plait.
    En espérant ne pas trop vous enquiquiner avec mes petits soucis...

    Merci d'avance,
    Irish

    Pour info: système d'exploitation: Windows 7 64X, IDE Eclipse, version Python 3.4
    Voici le code en question:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # -*-coding:Utf-8 -*
    import os
    import glob
     
    for file in glob.glob("E:/*.txt"):
        print(file)
     
    nbFichiers = 0
    for f in file:
        nbFichiers = nbFichiers + 1
     
    print(nbFichiers, "fichiers ont été trouvés")
    Et voici le type de résultat obtenu:
    E:/Credits.txt
    E:/eula.1028.txt
    E:/eula.1031.txt
    E:/eula.1033.txt
    E:/eula.1036.txt
    E:/eula.1040.txt
    E:/eula.1041.txt
    E:/eula.1042.txt
    E:/eula.1049.txt
    E:/eula.2052.txt
    E:/eula.3082.txt
    E:/History.txt
    E:/License1.txt
    E:/License2.txt
    E:/readme.txt
    13 fichiers ont été trouvés <===== alors qu'il y en a 15
    >>>

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 239
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 239
    Points : 36 692
    Points
    36 692
    Par défaut
    Salut,

    Il faudrait se réveiller
    Si le dernier file est "E:/readme.txt" vous comptez un nombre de caractères et non un nombre de fichiers.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    >>> z = "E:/readme.txt"
    >>> len(z)
    13
    >>>
    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Expert éminent

    Homme Profil pro
    Inscrit en
    Octobre 2008
    Messages
    4 298
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 4 298
    Points : 6 778
    Points
    6 778
    Par défaut
    Citation Envoyé par Irishamrock Voir le message
    Bonjour à tous
    ...

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    # -*-coding:Utf-8 -*
    import os
    import glob
    
    for file in glob.glob("E:/*.txt"):
        print(file)
        
    nbFichiers = 0
    for f in file:        # file est le dernier fichier
        nbFichiers = nbFichiers + 1
    
    print(nbFichiers, "fichiers ont été trouvés")
    Et voici le type de résultat obtenu:
    ...
    E:/readme.txt
    13 fichiers ont été trouvés <===== alors qu'il y en a 15
    >>>
    E:/readme.txt est le dernier file connu, donc, lorsque tu fais
    tu itères sur les lettres E, :, / r, e, a, d, ..

    Fais le compte il y en a bien 13.

    [pub]
    Avec Python le compte est bon !
    [/pub]


    ... damned, coiffé par Wiztricks.

  4. #4
    Candidat au Club
    Homme Profil pro
    Passioné
    Inscrit en
    Février 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Passioné

    Informations forums :
    Inscription : Février 2014
    Messages : 11
    Points : 3
    Points
    3
    Par défaut
    Merci pour vos réponses wiztricks et VinsS,

    Zut alors! Je m'étais omnibulé dans le code, sans me rendre compte que le résultat ne rendrait pas ce que je voulais... Il faut dire que je débute, donc pas facile facile
    Mais alors, comment puis je faire pour obtenir le nombre de fichiers trouvés? J'ai beau chercher, mais ne trouve pas. Dois je plutôt me tourner vers le nombre de boucles effectuées, lors de la recherche et de l'afficher en résultat?

    Je reste coincé également pour poursuivre le "scan" à travers les autres sous dossiers du répertoire.

    Je vais tenter à nouveau une recherche dans les bouquins, en essayant de croiser un script qui pourrait se rapprocher de ce que je recherche. Faut bien se gratter la tête un peu quand même... il n'y a que comme cela qu'on avance...
    Merci encore à vous

  5. #5
    Responsable Arduino et Systèmes Embarqués


    Avatar de f-leb
    Homme Profil pro
    Enseignant
    Inscrit en
    Janvier 2009
    Messages
    12 579
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Sarthe (Pays de la Loire)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Janvier 2009
    Messages : 12 579
    Points : 56 602
    Points
    56 602
    Billets dans le blog
    40
    Par défaut
    Bonjour,

    glob.glob(pathname) retourne une liste, et pour connaître le nombre d'éléments d'une liste...

    S'il faut rechercher dans des sous-répertoires, des sous-sous répertoires, etc. tu peux parcourir l'arborescence avec une méthode récursive. On trouve des exemples sur le forum ou dans la FAQ.

  6. #6
    Candidat au Club
    Homme Profil pro
    Passioné
    Inscrit en
    Février 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Passioné

    Informations forums :
    Inscription : Février 2014
    Messages : 11
    Points : 3
    Points
    3
    Par défaut
    Bonjour et merci f-leb pour les deux liens!!
    Je vais éplucher ca et je reviens vous dire ce que ca a donné
    Cordialement,
    Irish

  7. #7
    Candidat au Club
    Homme Profil pro
    Passioné
    Inscrit en
    Février 2014
    Messages
    11
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

    Informations professionnelles :
    Activité : Passioné

    Informations forums :
    Inscription : Février 2014
    Messages : 11
    Points : 3
    Points
    3
    Par défaut
    Bonjour à tous,
    Après un mois de recherche, je n'ai toujours pas réussi à faire ce que je souhaitais, occasionnant un abandon de ma part.
    Je me tourne vers d'autres problématiques plus importantes que je privilégie.
    Merci à vous pour votre aide.
    Si je trouve la solution ultérieurement, je n'hésiterai pas à la partager

Discussions similaires

  1. Problème concernant l'héritage
    Par Premium dans le forum C++
    Réponses: 3
    Dernier message: 17/03/2007, 03h15
  2. Réponses: 1
    Dernier message: 20/02/2007, 18h15
  3. Probléme concernant le type Date
    Par issam16 dans le forum Access
    Réponses: 3
    Dernier message: 20/07/2006, 16h25
  4. Problème concernant M. Outlook, Excel et une base microsoft sql.
    Par jyms2006 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 03/05/2006, 00h07
  5. [TASM] Problème concernant l'instruction LGDT
    Par Ninkosen dans le forum Assembleur
    Réponses: 3
    Dernier message: 15/07/2002, 20h09

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