如何在python函数中将变量分配给模块名

如何在python函数中将变量分配给模块名,python,module,Python,Module,我有一组模块,我希望能够根据给定给该函数的参数在函数中调用其中一个模块。我试过这个,但不起作用: from my.set import modules def get_modules(sub_mod): variable = sub_mod mod_object = modules.variable function(mod_object) 我得到: AttributeError: 'module' object has no attribute 'variable'

我有一组模块,我希望能够根据给定给该函数的参数在函数中调用其中一个模块。我试过这个,但不起作用:

from my.set import modules

def get_modules(sub_mod):
    variable = sub_mod
    mod_object = modules.variable
    function(mod_object)
我得到:

AttributeError: 'module' object has no attribute 'variable'

它不接受我给它的参数,它是存在于my.set.modules下的一个模块的名称。因此,如果我调用函数get_modules(modules下的module的name_),我希望modules.variable行是“modules.name_of modules下的modules”,我可以将其作为对象传递给mod_对象。

在当前代码中,您正在查找不存在的
modules.variable
,因此出现了错误!这不是获取对象属性的方式

要实现您想要的功能,请使用
getattr
函数

mod_object = getattr(modules, variable)

你希望
sub_mod
是什么?我希望它成为my.set.modules中的一个子模块公布我的答案,请查看。