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

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

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

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

Войти через центр авторизации
Похожие вопросы
30 апр. 2024, в 23:39
3000 руб./за проект
30 апр. 2024, в 23:32
1500 руб./за проект
30 апр. 2024, в 22:44
500 руб./в час