如何通过字符串方法名称在类内部调用python静态方法

But*_*der 5 python introspection

我定义了以下字符串,它们指定了python模块名称,python类名称和静态方法名称。

module_name = "com.processors"
class_name = "FileProcessor"
method_name = "process"
Run Code Online (Sandbox Code Playgroud)

我想调用method_name变量指定的静态方法。

我如何在python 2.7+中实现这一目标

rah*_*hul 5

使用__import__函数通过将模块名称指定为字符串来导入模块。

使用getattr(object, name)访问名字从一个对象(模块/类或任何东西)

在这里你可以做

module = __import__(module_name)
cls = getattr(module, claas_name)
method = getattr(cls, method_name)
output = method()
Run Code Online (Sandbox Code Playgroud)