使用字符串获取类的方法

时间:2013-09-16 22:25:55

标签: python

我有一个类,我只想使用字符串调用它的方法。我该怎么做?

class MyClass:
    def do_something():
        print 'MyClass did something'

MyClass.get_method('do_something')()

2 个答案:

答案 0 :(得分:1)

class MyClass:
    def do_something(self):
        print 'MyClass did something'

getattr(MyClass(),'do_something')()

答案 1 :(得分:1)

你可以这样做:

class MyClass:

    @staticmethod
    def do_something():
        print 'MyClass did something'

并致电:

getattr(MyClass, 'do_something')()

注意在方法中添加@staticmethod以确保在没有类实例的情况下调用它。