Python 没有与 Java 中的 Class.forName()
完全相同的功能。但是,可以使用 importlib
模块来实现类似的功能。
importlib
模块提供了动态导入模块的功能。例如,可以使用 importlib.import_module()
函数动态导入一个模块,然后使用 getattr()
函数获取该模块中的类或函数。
以下是一个示例代码:
import importlib
module_name = 'example_module'
class_name = 'ExampleClass'
module = importlib.import_module(module_name)
cls = getattr(module, class_name)
在上面的示例代码中,example_module
是要动态导入的模块名,ExampleClass
是该模块中的类名。使用 importlib.import_module()
函数动态导入模块,然后使用 getattr()
函数获取该模块中的类。
需要注意的是,使用 importlib
模块动态导入模块需要非常小心,因为这可能会导致安全问题。在使用 importlib
模块时,应该确保只导入可信的模块,并且避免使用不安全的输入来确定要导入的模块名。
领取专属 10元无门槛券
手把手带您无忧上云