python - 如何从当前文件夹外部导入模块?

标签 python python-3.x python-import

我正在尝试从 a.py 中的目录外部导入模块。

目录看起来像这样:

.project
├── folder_1
│   └── a.py
|
├── folder_2
│   ├── __init__.py
│   └── b.py

我的代码在a.py

#contents of a.py
from ..folder_2 import b.py

但是从这里,我收到了这个错误

ImportError: attempted relative import with no known parent package

我长期以来一直在寻找这个问题的解决方案,但一直找不到任何有帮助的东西。

最佳答案

具有以下结构:

├── project
├── __init__.py
├── folder_1
│   ├── __init__.py
│   └── a.py
├── folder_2
│   ├── __init__.py
│   └── b.py
└── main.py 

你的a.py在执行main.py时不会提示:

from project.folder_1 import a

由于 projectmain.py 的包,而 folder_1folder_2 是它的子包,因此您可以使用 Intra-package References .

如果你想直接执行a.py,你可以简单地执行以下操作:

import sys

sys.path.append('..')

from folder_2 import b

关于python - 如何从当前文件夹外部导入模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66024987/

相关文章:

python - 如何使用 pyplot.barh() 在每个条上显示条的值

python - 如何在Python中使用Z分数计算相关性?

python - 包已安装时出现 ModuleNotFoundError

python - 初始化/导入子模块而不污染全局命名空间

python sqlite3.connect - 无法打开数据库文件

python - 如何从链接列表中抓取?

python-3.x - 在 python 3.6 中安装 libxml2 和 libxslt

Python 诅咒破坏终端输出

python - 如何创建不执行任何操作的函数引用

python - 创建Python包并导入模块