python导入路径中的应用名称

时间:2015-06-11 06:28:15

标签: python python-2.7 python-import

如何在导入路径中使用“相对静态”路径

例如,如果我有一个名为asdf的应用程序,则使用以下目录

asdf/
 +- asdf/
 |   +- main.py
 |   +- config.py
 +- tests/
 etc.

目前我已经在我的main.py ...

from config import Config

我希望能够使用......

from asdf.config import Config

相对来说,之所以模块正在移动,因为项目仍然处于起步阶段。 (没有双关语)

3 个答案:

答案 0 :(得分:1)

您可以轻松找到解决此问题的方法。但是存在与其父级具有相同名称的模块/文件夹总是会导致问题,尤其是当父模块和子模块都在python路径中时。从django1.6开始,django也同样命名项目文件夹和内部文件夹,这会引起很多问题,特别是在测试中。

因此,作为一种规范,请尽量避免将模块命名为与父级相同的模块。

答案 1 :(得分:0)

asdf/
 +- asdf/
 |   +- asdf/
 |       config.py
 |   +- main.py
 +- tests/
 etc.

如果您有此目录结构,则可以使用此from asdf.config import Config

在main.py导入config.py的Config方法

答案 2 :(得分:0)

我找到了答案(或者可能只是一种解决方法)。

如果我"编译"它与setuptools一起工作。