我有一个python应用程序的目录结构,在主文件夹中我有一个名为handlers的文件夹,在该文件中我有一个所有处理程序都应该继承的base.py.我还有一个名为users的文件夹,其中包含与用户相关的所有处理程序。
\main
\handlers
base.py
__init__.py
\users
__init__.py
authenticated.py
logout.py
我的问题是我无法在users文件夹中的任何文件中导入基础,但可以从users文件夹导入。我知道我必须做类似bellow的事情
from ..handlers import *
但是由于某些原因,我无法工作的是将base.py导入到users目录中的文件以及我稍后添加的其他directorys中。
答案 0 :(得分:10)
import sys
sys.path.append('/your/dir/goes/here')
from base import foo
这样的东西应该允许你从你选择的任何目录中导入东西。
答案 1 :(得分:2)
要启用相对导入,请将main/__init__.py
添加到Python包中以使main
目录。 main
的父目录应位于sys.path
。