【发布时间】:2020-05-24 10:57:23
【问题描述】:
我无法从从子文件夹导入模块的子文件夹导入模块。我正在使用 python 3.6。
文件夹的结构如下所示:
src
├── script.py
└── prepare_data
├── __init__.py
├── test.py
└── lib
├── aspect_extraction.py
└── __init__.py
在aspect_extraction.py 我愿意:
def aspect_extraction():
print("ok this worked")
test.py 看起来像这样:
from lib.aspect_extraction import aspect_extraction
def test_func():
aspect_extraction()
test_func()
script.py 看起来像这样:
from prepare_data.test import test_func
test_func()
当我运行pipenv run python src/script.py
File "/src/prepare_data/test.py", line 1, in <module>
from lib.aspect_extraction import aspect_extraction
ModuleNotFoundError: No module named 'lib'
奇怪的是,当我运行 pipenv run python src/prepare_data/test.py 时,它可以工作。
ok this worked
我无法确定问题所在...这与 python 版本有关吗?
【问题讨论】:
-
您可以尝试将一个空的
__init__.py文件添加到src 文件夹并尝试运行命令pipenv run python src/script.py吗?
标签: python import module subdirectory