Avoir un problème avec IronPython pour instancier une classe dans la console IronPython
-
05-07-2019 - |
Question
J'essaie d'apprendre IronPython. J'ai créé une classe extrêmement simple comme celle-ci:
class Test:
def testMethod(self):
print "test"
Ensuite, j'essaie de l'utiliser dans la console IronPython:
>>> import Test
>>> t = Test()
Après la deuxième ligne, le message d'erreur suivant s'affiche:
TypeError: la portée n'est pas appelable
Qu'est-ce que je fais mal?
La solution
vous devez à partir de l'importation du nom de fichier Test
où nomfichier est le nom de base de la classe de fichier dans laquelle Test est enregistré.
exemple: la classe Test
est enregistrée dans test.py
alors:
from test import Test
t = Test()
se déroulera comme prévu.
Autres conseils
import Test
charge le module nommé Test, défini dans un fichier nommé Test.py (c | d). Ce module contient à votre tour votre classe nommée Test. Vous essayez d'instancier le module appelé Test. Pour instancier la classe Test dans le module Test, vous devez utiliser:
t = Test.Test ()
Ce concept peut être assez délicat, surtout si vous avez une formation dans d’autres langues. Il m'a fallu un certain temps pour comprendre aussi:)