从另一个包导入一个类 - Python

时间:2017-06-29 23:30:52

标签: python

我的目录结构如下:

app/
-sub1/
  -sub1_1/
  -sub1_2/
  -sub1_3/
-sub2
 -class1.py
-app.py

我正在运行一个试图从app文件夹执行app.py的烧瓶应用程序。 我想从sub2中的类文件中的sub1中的文件导入类。

我想在不设置 sys.path

的情况下执行此操作

更新:我在所有文件夹级别<_ em> init _.py

1 个答案:

答案 0 :(得分:0)

如果您正在运行app.py,则app目录是您的模块根目录,您可以使用

from sub2 import class1

还有相对进口:

from ..sub2 import class

对于位于sub2 / sub2_N的模块,它将是from ...sub2

注意:相对导入在Python 2.6和2.7中不起作用(2.5-没有这个),除非你将这一行添加到文件顶部:

from __future__ import absolute_imports