Задать вопрос

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

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

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

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

Похожие вопросы