Вызов методов по строке

У меня есть следующий класс.

func_list= ["function1", "function2", "function3"]

class doit(object):
    def __init__(self):
        for item in func_list:
            if item == "function1":
                self.function1()
            elif item == "function2":
                self.function2()
            elif item == "function3":
                self.function3()

    def function1(self):
        #do this
        pass
    def function2(self):
        #do that
        pass
    def function3(self):
        pass

Если создается экземпляр этого класса, он перебирает список строк и вызывает методы в зависимости от фактической строки. Строки в списке имеют имена соответствующих методов.

Как я могу сделать это более элегантным способом? Я не хочу добавлять ещеelif-путь для каждой «функции», которую я добавляю в список.

6
задан mgilson 25 July 2012 в 12:53
поделиться