我知道我们可以使用 exec 即时加载模块(从字符串)
例如
path = 'A.B'
class = 'C'
exec( "from %s import %s" %(path, class) )
但是我如何将它实例化为对象 c 呢?顺便说一句,上面是从字符串加载模块的最佳方法吗?看起来不太安全。谢谢
问候, 约翰
最佳答案
对于python<=2.6,可以使用内置的__import__
功能:
m = __import__('A.B', globals(), locals(), ['C'])
C = getattr(m, 'C')
c = C()
关于python - 如何即时导入类并将其实例化为对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7960321/