Python: 同名模块和文件

Python: Module and file with the same name

这是我的 Django 项目文件夹结构

/
 |
 --some_name
    |
    --lib
 |
 --another_name
    |
    --another_lib
       |
       --some_name.py

当我 运行 代码来自:

时出现问题
another_name/another_lib/some_name.py

当我尝试加载上层库时some_name/lib

import some_name.lib

我得到:

Exception Type: ImportError
Exception Value: No module named some_name.lib

python 找不到它并尝试加载:

another_name.another_lib.some_name.lib

如何让它在每次不改变搜索路径的情况下加载另一个包? 我可以从我的文件夹结构的根目录进行 python 搜索吗?

在Python2中,它首先尝试导入一个相对于当前模块的模块。此隐式相对导入已在 Python 3 中删除。

要使用 Python 2 中的新行为,请将其放在文件顶部:

from __future__ import absolute_import