
通过字符串动态实例化对象和调用方法
为了解决如何通过字符串动态实例化对象和调用方法的问题,可以使用如下方法:
代码:
xx1.py
class xxx:
name = 'xxx'
def __init__(self, name='xxx'):
self.name = name
def hello(self):
print(f'hello {self.name}')
def xxx2(name='xxx2'):
print(f'hello {name}')xx2.py
import importlib
# 动态导入模块
xx1_module = importlib.import_module('xx1')
# 动态实例化对象
object = getattr(xx1_module, "xxx")()
# 动态调用对象方法
method = getattr(object, "hello")
method()
# 动态调用函数
function = getattr(xx1_module, "xxx2")
function()通过此方法,可以实现动态实例化对象和调用方法。
输出:
hello xxx hello xxx2










