如何通过变量名导入模块以及如何命名模块

时间:2018-10-25 16:30:01

标签: python python-3.x

所以我想根据变量名导入python脚本。假设我将此函数传递给模块路径,我希望它从我传递给 的路径中导入该模块,并为其命名。示例:

import some_module as sm
#Would import some_module

我想要的是这样的

module_to_import = some_other_module
import module_to_import as mti
#Would import some_other_module

对不起,如果这没有太大意义,很难用语言表达出来。

谢谢。

2 个答案:

答案 0 :(得分:2)

使用importlib.import_module,您可以这样做:

from importlib import import_module
module_name = 'some_module'

mti = import_module(module_name)

表示您可以从字符串导入模块。在您的情况下,您可以使用

从其他模块获取该名称
module_name = some_other_module.__name__

答案 1 :(得分:1)

您可能正在寻找的是动态导入模块的能力

module = __import__(module_name)
my_class = getattr(module, class_name)
instance = my_class()

您可以在this link

上了解有关此解决方案和替代解决方案的更多信息。