【问题标题】:Python: import submodule from importlib modulePython:从 importlib 模块导入子模块
【发布时间】:2019-08-01 21:27:14
【问题描述】:
我有一个这样的目录:
parent.py ------+
child1.py---+
child2.py---+
... etc
我可以像这样导入父模块:
importlib.import_module("parent"))
那么,既然我已经有了父模块,那么获取子模块的最佳方法是什么?我试过parent.child1、importlib.import_module("child1", parent)、parent.import_module('child1') 等都无济于事。
有什么建议吗?
谢谢
【问题讨论】:
标签:
python
python-import
python-importlib
【解决方案1】:
你可以尝试用这种方式组织文件:
parent (directory)-+
__init__.py ---+
child1.py ---+
child2.py ---+
在 init.py 中,您可以从 child* 文件导入,并且可以从 parent 模块外部导入。
例如__init__.py。也可以为空,但必须存在。
from child1 import foo
from child2 import bar
从外部使用:
from parent import foo
or
from parent.child1 import foo
这并不能直接回答您的问题。但是,在您以上述方式重新组织文件后,请尝试再次使用 importlib。