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 :

Retourner toutes les valeurs de ma boucle FOR


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2013
    Messages : 116
    Par défaut Retourner toutes les valeurs de ma boucle FOR
    je voudrais savoir comment récupérer toutes les valeurs de ma boucle via un Return.
    Dans ma première fonction, je boucle pour récupérer tout mes dossiers, sous-dossiers. Puis je fais un retour sur pathFiles

    Dans ma seconde fonction, je test ma commande linux sur tout les fichiers des dossiers, mais le problème est le suivant: ma fonction ne teste que le dernier résultat de ma boucle et non pas toutes les valeurs.


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    from ftplib import FTP
    import ftplib
    import os
    import errno
    import time
    
    class ProcessFile:
      path= "FolderFiles"
      target=" /var/www/folder/Output"
      extract=""
      monitoring=""
      bash="unrar "
    
      @staticmethod
      def returnPath():
        pathFiles= []
        for root, dirs, files in os.walk(ProcessFile.path, topdown=True):
          for name in dirs:
            os.path.join(root, name)
          for name in files:
            pathFiles= os.path.join(root, name)
            print(pathFiles)
        return pathFiles 
    
      @staticmethod
      def testArchive(pathFile):
        monitoring = ProcessFile.bash+"t "+pathFile
        verifyFiles = os.system(monitoring)
        return verifyFiles 
    
    def testCodeRetour():
      myPath = ProcessFile.returnPath()
      print(myPath)

    Auriez-vous une idée de comment procédé ?

    Merci de votre aide

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Salut,

    Citation Envoyé par corv0 Voir le message
    Auriez-vous une idée de comment procédé ?
    Stocker les valeurs de chaque itération dans une liste et retourner cette liste.
    C'est basique mais les listes sont des objets de base du langage...

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Membre confirmé
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Février 2013
    Messages
    116
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Février 2013
    Messages : 116
    Par défaut
    Hello Wiztrick,

    Merci du conseil, je vais voir ce que je peux faire, mais j'ai oublié de préciser que je suis débutant en python, donc j'essaye de faire les choses à mon rythme.

    Cordialement

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 741
    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 741
    Par défaut
    Citation Envoyé par corv0 Voir le message
    mais j'ai oublié de préciser que je suis débutant en python, donc j'essaye de faire les choses à mon rythme.
    Pourquoi y-a-t-il des constructions POO dans votre code (class, staticmethod, ...)?
    Elle ne servent à rien côté "fonctionnel" et si vous débutez, commencez par le début: faire une boucle pour stocker des résultats dans une liste est bien plus important/fondamental (et décrit dans la plupart des tutos) qu'apprendre à ranger votre code dans des boîtes (d'autant qu'il faut écrire beaucoup de lignes de code pour pouvoir en profiter et en comprendre l'intérêt).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Réponses: 1
    Dernier message: 15/03/2013, 17h26
  2. [XL-2010] Boucle For qui ne fonctionne pas pour toutes les valeurs
    Par pleskyd dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 13/02/2012, 15h16
  3. [for and if] trier les valeurs d'une boucle
    Par Newenda dans le forum MATLAB
    Réponses: 2
    Dernier message: 30/12/2011, 19h01
  4. Réponses: 2
    Dernier message: 10/11/2011, 12h01
  5. [PDO] retourner toutes les valeurs dans un objet
    Par Jcpan dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/04/2010, 16h14

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