Запуск нескольких файлов Python

Возникла потребность запускать более трех файлов .py, но столкнулся с такой проблемой, которая в PyCharm перегружает полностью ПК. Однако, через сам IDE Python идет все ровно.

Каким "методом" или способом можно одновременно (или последовательно) исполнить все файлы .py в определенной папке?

P.S. Сами программы в папке зациклены и не выводят результаты.


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

Автор решения: Georgiy
import subprocess


files = ["foo.py", "bar.py", "foobar.py"]  # файлы, которые нужно запустить
for file in files:
    subprocess.Popen(args=["start", "python", file], shell=True, stdout=subprocess.PIPE)

Суть этого кода, что он посылает команды в терминал и запускает её. Для каждого файла открывается новый терминал. Этот код гарантированно работает на windows, на linux не проверял (там надо немного по-другому вроде как посылать аргументы, поправьте в комментариях если не прав).

Из недостатков такое решение проблематично дебажить (если это очень важно).

В зависимости от задачи можешь получать нужные файлы через модуль os и посылать дополнительные аргументы, дополнив список в аргументе args в subprocess.Popen, если в скрипте они вытаскиваются через sys.argv, argparse и прочие библиотеки для работы с CLI.

→ Ссылка