No module named 'module.module_name' ; 'module_1' is not a package

Есть структура проекта:

prj_folder
  folder_1
    __init__.py
    scripts.py
    folder_2
      __init__.py
      engine.py

я пытаюсь вызвать функцию, которая находится в scripts.py, из файла engine.py:

from folder_1.scripts import func1

и получаю ошибку:

ModuleNotFoundError: No module named 'folder_1.scripts'; 'engine.py' is not a package

как её исправить?

*в scripts.py находятся только функции


Ответы (1 шт):

Автор решения: gil9red

Через sys.path работает (но мне кажется это все-же костыльно).

prj_folder/
    folder_1/
        __init__.py
        scripts.py
    folder_2/
        __init__.py
        engine.py

В scripts.py:

def func1():
    pass

В engine.py:

import sys
sys.path.append('..')

from folder_1.scripts import func1
→ Ссылка