Bonjour,
Je veux instancier une classe dont je ne connais pas le nom à l'avance. Il sera dans une String lors de l'execution du programme.
Idéalement, je voudrais avoir un fichier de config qui contient des noms de classes, par exemple
Et dans mon code, je voudrais pouvoir instancier ma classe selon ce paramètre. Exemple :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 [maSection] actions = monPackage.Classe1 action2 = Classe2
Je sais qu'il est possible d'instancier un module dynamiquement avec __import__, par exemple
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 action = ConfigReader.get(maSection, actions) monInstance = [fonction/action/astuce](action)(paramInstance)
Mais je n'ai pas réussi à instancier la classe sans faire de test sur son nom.
Code : Sélectionner tout - Visualiser dans une fenêtre à part monModule = __import__(actions)
Une idée ?
Stéphane
Partager