запустить скрипт python с ошибкой подпроцесса при ImportError

#python #subprocess

#python #подпроцесс

Вопрос:

Дерево моих файлов выглядит примерно так:

 package1
    __init__.py
    parent_script.py
package2
    __init__.py
    child_script.py
    module.py
 

Я пытаюсь выполнить child_script.py как подпроцесс из parent_script.py .

child_script.py использует импорт из package2.module.py :

 ROOT_DIR = os.path.abspath(os.path.join(os.path.dirname(__file__), '..'))
sys.path.append(ROOT_DIR)
from package2.module import func1, func2
 

Я получаю ImportError: No module named.. при запуске child_script.py как подпроцесс, но он хорошо работает независимо.

Где я ошибаюсь?

Комментарии:

1. можете ли вы рассказать, как вы импортируете модуль. py вещи из child_script

2. @SachinRajput, я обновил вопрос.

3. просто выполните импорт из модуля func1, func2, потому что вы находитесь в том же каталоге, что и child_script.py

4. это решило проблему! Спасибо! но почему он работает независимо?

5. если вы не возражаете, можете ли вы проголосовать тогда