Funktionsaufruf aus Variable
Verfasst: Donnerstag 12. Oktober 2017, 10:01
Hallo zusammen.
Ich möchte eine Funktion 'dynamisch' aufrufen. Die Kommandos sind in einer Datenbank gespeichert.
Dabei muss auch noch evtl. ein Modul eingebunden werden.
Als Beispiel.
In der Datenbank steht das Commando 'foo.bar()'
foo.bar() muss jetzt ausgeführt werden. Nur wie?
Mein Ansatz:
Dabei bekomme ich den Fehler "TypeError: 'unicode' object is not callable". Logisch. Nur wie mache ich aus einem Unicode String eine 'Funktion'?
Ich habe auch versucht:
Ging aber auch nicht.
Kann mir bitte jemand helfen. Danke.
Ich möchte eine Funktion 'dynamisch' aufrufen. Die Kommandos sind in einer Datenbank gespeichert.
Dabei muss auch noch evtl. ein Modul eingebunden werden.
Als Beispiel.
In der Datenbank steht das Commando 'foo.bar()'
foo.bar() muss jetzt ausgeführt werden. Nur wie?
Mein Ansatz:
Code: Alles auswählen
func = crontab["ct_Command"]
func_mod = func.split(".")
if len(func_mod) > 1:
func_mod[0] = imp.load_source(func_mod[0], '/home/pi/bob/modules/'+func_mod[0]+'.py')
print eval(func_mod[0].func_mod[1])
Ich habe auch versucht:
Code: Alles auswählen
func = crontab["ct_Command"]
func_mod = func.split(".")
if len(func_mod) > 1:
func_mod[0] = imp.load_source(func_mod[0], '/home/pi/bob/modules/'+func_mod[0]+'.py')
func()
Kann mir bitte jemand helfen. Danke.