Python 从父目录导入
我有这种路径架构:Python 从父目录导入,python,Python,我有这种路径架构: >main_path/ __init__.py config/ __init__.py common.py app_1/ __init__.py config.py index.py > 我希望能够在config.py中这样做: >from main_path.config import common > 虽然
>main_path/
__init__.py
config/
__init__.py
common.py
app_1/
__init__.py
config.py
index.py
>
我希望能够在config.py
中这样做:
>from main_path.config import common
>
虽然它不起作用。Python告诉我:
> $> pwd
..../main_path/app_1
$> python index.py
[...]
ImportError: No module named main_path.config
>
据我所知,如果我从主路径加载所有内容,这是可能的,尽管目标是让多个应用程序具有一个公共配置文件。我试图将父目录添加到app_1/
\uuuu init\uuuu
.py中的\uuu路径\uuuu
,但没有任何更改
我的下一步将是有一个象征性的链接,虽然我真的不喜欢这个“解决方案”,所以如果你有任何想法来帮助我,这将是非常感谢
提前谢谢 您可以调整PYTHONPATH环境变量或编辑sys.path。根据要导入的PYTHONPATH环境变量中必须包含的a模块。您可以在程序中通过以下方式修改此内容:
import sys
sys.path.append('PATH_TO/config')
import common
有关详细信息,您可能需要查看。如果要修改python的搜索路径而不必每次都设置PYTHONPATH,可以将路径配置文件(.pth文件)添加到python路径上的目录中 本文件对其进行了详细描述: 最方便的方法是添加 配置文件到目录的路径 这已经在Python的道路上了, 通常到…/站点包/ 目录路径配置文件 扩展名为.pth,每个 行必须包含一个 将附加到sys.path
如果您使用的是相对导入,那么还可以执行
导入操作系统;chdir('PATH\u TO/config')
,如果您愿意的话。