Python无法从同一目录导入吗?

3
我来翻译一下吧:“我有以下的目录结构(这不是我写的,所以我假设它必须要正常工作?):”
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目录位于系统路径中(我只需将其作为tool运行)。

2个回答

5
使用相对导入:

使用相对导入:

from .common import foo

4

您需要使用相对导入

from .common import foo

Python 3区分绝对引用和相对引用,并不支持隐式相对引用,而这在Python 2.x中是可用的。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接