Как в subprocess передать sys.path?

Есть основной скрипт, он вызывает другие скрипты с помощью subprocess из папки уровнем ниже, эти subprocess импортируют из основного скрипта пару функций, но они не видят (ModuleNotFoundError:) в sys.path только папка уровня скрипта, а уровня основного скрипта нет, если добавить вручную то отрабатывает как надо но похоже на костыль, как еще можно передать ?
  • Вопрос задан
  • 44 просмотра
Решения вопроса 1
@MadInc Автор вопроса
Отвечаю сам на свой вопрос
subprocess.Popen(self.cmd, shell=True, env={**os.environ, 'PYTHONPATH': ';'.join(sys.path)})

sys.path надо передавать именно в PYTHONPATH так как первым делом модули ищутся там
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы