我有以下目录结构(我没有写这个,所以我假设它必须以某种方式工作?):
tool.py
core/
__init__.py
config.py
common.py
tool.py
间接导入config.py
,config.py
有一行from common import foo
,显示以下错误:
...
File "...\core\config.py", line 5, in <module>
from common import foo
ImportError: No module named 'common'
它可能不相关,但我在Windows上使用Python 3.4,而tool.py
目录位于系统路径中(我只是将其作为{{1}运行}})。
答案 0 :(得分:5)
使用相对导入:
from .common import foo
答案 1 :(得分:4)
您必须使用相对导入
from .common import foo
Python 3对绝对导入和相对导入进行了区分,并且不支持可以在Python 2.x中使用的隐式相对导入。