tags:

views:

70

answers:

1

In python, say I have a string that contains the name of a class function that I know a particular object will have, how can I invoke it?

That is:

obj = MyClass() # this class has a method doStuff()
func = "doStuff"
# how to call obj.doStuff() using the func variable?
+10  A: 

Use "getattr": http://docs.python.org/library/functions.html?highlight=getattr#getattr

obj = MyClass()
try:
    func = getattr(obj, "dostuff")
    func()
except AttributeError:
    print "dostuff not found"
Adam Vandenberg