我有这样的文件结构:
package/
__init__.py
foo.py
subdir/
bar.py
baz.py
我希望能够运行foo.py
并导入bar.py
。在bar.py
内部,baz.py
是使用import baz
导入的。问题是如果我将bar
导入到baz
中,则无法导入foo
。
foo.py
from importlib import import_module
import_module('subdir.bar', package='package')
答案 0 :(得分:1)
您还需要在__init__.py
文件夹中添加一个subdir
。参见下面的示例和输出:
foo.py
from subdir import bar
print "hello from foo.py"
subdir / __init__.py
(空)
subdir / bar.py
import baz
print "hello from bar.py"
subdir / baz.py
print "hello from baz.py"
正在运行的foo.py
hello from baz.py hello from bar.py hello from foo.py