Please help
J'essaie d'évaluer le nom d'une fonction, mais pour le moment je me contente simplement de l'objet puisque même ça, ça ne marche pas.
Le but est de récupérer l'objet représentant la fonction en vue de travailler avec son prototype, ses arguments etc..
Le problème : eval("nom_variable.nom_fonction") ne fonctionne pas
Ce qui provoque cette erreur : apparemment nom_variable n'est pas déclaré dans l'instance de classe courante (???)
None
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 NB_LIB = 7 class Librairies: def __init__(self, environnement): self.__env = environnement # Reference sur l'environnement self.__lib = [] # Ensemble des librairies fonctionnelles for i in range(NB_LIB): self.__lib.append(None) def getLibFonction(self, fonction): print self.__lib[0] # marche print eval("self.__lib[0]") # marche pas # ...
Traceback (most recent call last):
File "C:\PROGRA~1\lib\site-packages\Pythonwin\pywin\framework\scriptutils.py", line 310, in RunScript
exec codeObject in __main__.__dict__
File "P:\travail\solution\Start.py", line 121, in ?
main()
File "P:\travail\solution\Start.py", line 119, in main
st=Start("P:\\travail\\solution\\test3.xml")
File "P:\travail\solution\Start.py", line 27, in __init__
self.__executerJeuDeTests()
File "P:\travail\solution\Start.py", line 63, in __executerJeuDeTests
init.executer()
File "P:\travail\solution\Test.py", line 71, in executer
lib = self.getLibrairies().getLibFonction(self.__fonction)
File "P:\travail\solution\Librairies.py", line 40, in getLibFonction
File "<string>", line 0, in ?
AttributeError: Librairies instance has no attribute '__lib'
Partager