Это проект nodejs и python, поэтому структура каталогов такая, какая она есть.
Это моя структура каталогов:
top_level/
scripts/
__init__.py
python_script.py
some_nodejs_files.js
tests/
__init__.py
test_python_script.py
Я могу поместить весь свой код модульного теста в каталог scripts
, но я хотел бы поместить тестовый код в каталог теста, который находится на том же уровне, что и scripts
. Как импортировать python_scripts.py
из test_python_script.py
С tests/test_python_script.py
Я пытался сделать from ..scripts import python_script
, но я получил ValueError: attempted relative import beyond top-level package
.
РЕДАКТИРОВАТЬ: Прочитав некоторые ссылки в комментариях и попробовав некоторые вещи, я добавил
import sys
sys.path.append("..")
from scripts import python_script
и это похоже на дело.
Что я выучил
Где бы у вас ни был init .py, эта папка является именем модуля.