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 :

récupérer résultat d'une méthode


Sujet :

Python

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 17
    Par défaut récupérer résultat d'une méthode
    Bonjour,
    Lorsque j'utilise la méthode suivante dans un autre scipt, le résultat désiré s'affiche bien à l'écran mais je n'arrive pas à le récupérer. Avec un 'print' de la méthode, je me rertouve aven un 'None' et non avec le résultat afficher par la méthode à l'écran:
    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
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1234567891011121314
        def put(self, path1, path2, path3, path4, function, comment,  exposant):
     
            self.pathway1 = path1
            self.pathway2 = path2
            self.pathway3 = path3
            self.pathway4 = path4
            self.mode = function
            self.instruction = comment
            self.td = exposant
     
            table = [self.pathway1,self.pathway2,self.pathway3,self.pathway4,self.mode,self.instruction,self.td]
            for chemin in table[0:5]:
                print type(chemin), ', length =',len(chemin), ', name =',chemin
            print type(table[6]), ', value =',table[6]
    Merci de votre aide.

  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,

    Ta variable table est ici une variable locale à la méthode put(), et disparaît donc à la fin de son exécution.

    Pour récupérer table après la fin d'exécution de put(), il faut que ta variable appartienne à l'instance de classe, ce qui est fait en la préfixant par "self".

    Ce qui donnerait quelque chose comme:

    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
     
    def put(self, path1, path2, path3, path4, function, comment,  exposant):
     
            self.pathway1 = path1
            self.pathway2 = path2
            self.pathway3 = path3
            self.pathway4 = path4
            self.mode = function
            self.instruction = comment
            self.td = exposant
     
            self.table = [self.pathway1,self.pathway2,self.pathway3,self.pathway4,self.mode,self.instruction,self.td]
            for chemin in self.table[0:5]:
                print type(chemin), ', length =',len(chemin), ', name =',chemin
            print type(self.table[6]), ', value =',self.table[6]
    Tyrtamos

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 17
    Par défaut
    merci pour ton aide Tyrtamos.

    J'ai essayé ta solution mais rien n'y fait, je récupère toujours 'None' dans le script où je lance la fonction put().
    Autre chose : ce n'est pas la table que je veux récupérer mais ce qui ressort des deux print.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Février 2008
    Messages
    17
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2008
    Messages : 17
    Par défaut
    Problème résolu.
    Il manquait juste un 'return'!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Récupérer résultat d'une fenêtre DOS
    Par besly dans le forum Scripts/Batch
    Réponses: 8
    Dernier message: 07/11/2008, 14h45
  2. Récupérer résultat d'une requête
    Par nerila dans le forum Bases de données
    Réponses: 10
    Dernier message: 02/03/2007, 12h53
  3. Récupérer résultat d'une rotation
    Par Burckel dans le forum OpenGL
    Réponses: 5
    Dernier message: 14/12/2006, 17h08
  4. [VBA-E] Récupérer résultat d'une requête
    Par ragnarök dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 05/04/2006, 16h21
  5. Réponses: 5
    Dernier message: 30/06/2005, 10h28

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