Partage
  • Partager sur Facebook
  • Partager sur Twitter

appeler fonction dans une autre classe

Sujet résolu
    20 novembre 2011 à 12:34:41

    Bonjour à tous,

    J'ai deux classes dans deux fichiers séparés. J'essayes d'appeler une méthode d'une des deux classes dans une méthode d'une autre classe mais ça bug...Voici plus en détail:

    #File Test.py
    import ABCD
    
    class Main():
       #variable globale
       s = "jj"
    
       def __init__(self):
          self.appelle()
    
       def appelle(self):
          monObjet = ABCD.Autre()
          monObjet.estappelle(Main.s)
    


    #File ABCD.py
    
    class Autre():
    
       def estappelle(s):
          print s
    


    Voilà l'erreur:
    dans Test.py, au niveau de la ligne "monObjet.estappelle(Main.s)"
    il me dit:
    "TypeError: estappelle() takes exactly 1 argument (2 given)"

    Savez-vous la résoudre?

    Merci d'avance ;)
    • Partager sur Facebook
    • Partager sur Twitter
      20 novembre 2011 à 12:54:55

      Bonjour,

      Pour faire simple, tu as oublié le self dans la liste des paramètre de la méthode :
      #File ABCD.py
      
      class Autre():
      
         def estappelle(self, s):
            print s
      

      • Partager sur Facebook
      • Partager sur Twitter
        20 novembre 2011 à 13:00:27

        Nickel ;)

        Merci, c'est une erreur toute bête, pardonne mon inexpérience en Python...

        • Partager sur Facebook
        • Partager sur Twitter

        appeler fonction dans une autre classe

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown