给定模块对象导入子模块
我有一个模块,它是一个对象,现在我需要从这个模块中导入一个子模块。就像这样:
import logging
x = logging
现在我想用 x
来导入 logging.handlers
,而不是用“logging”这个名字。(这是因为我在做一些动态导入,可能不知道模块的名字。)
我该怎么做呢?如果我用 import x.handlers
,就会出错。
2 个回答
0
你可以使用内置的函数 __import__
:
5
试试这个:
__import__('%s.handlers' % x.__name__)
注意,这个操作会返回一个指向 logging
的引用,可能你对此并不在意。不过,它会创建 x.handlers
。