以下代码有问题:
def get_module(mod_path):
mod_list = mod_path.split('.')
mod = __import__(mod_list.pop(0))
while mod_list:
mod = getattr(mod, mod_list.pop(0))
return mod
当我get_module('qmbpmn.common.db_parsers')
时,我得到错误消息:
AttributeError: 'module' object has no attribute 'db_parsers'
。在
但是:import qmbpmn.common.db_parsers
工作得非常好。在
__import__
与虚线模块路径一起工作,因此这应该可以工作或者更简单
^{pr2}$也许我误解了这个问题
导入包并不会自动将所有子模块导入到它的命名空间中。例如
不是那个意思
将自动解决
使用
__import__
导入子模块时,必须将父包作为fromlist
参数传递:相关问题 更多 >
编程相关推荐