Как запустить python из python Windows 10)?

#python #windows-10

Вопрос:

Я запускаю python3 в Windows 10. В рамках моей программы я пытаюсь запустить другой экземпляр python.

 os.system("python -m http.server")
print("All Done")
 

или

 os.system("python")
 

Я хочу видеть всплывающую оконную оболочку, которая позволит мне видеть вывод и взаимодействовать с ним. Но вместо этого программа просто продолжается. Я даже не вижу, как открывается окно. Чего мне не хватает?

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

1. Почему вы хотите сделать это вместо импорта других модулей, которые вы пытаетесь запустить?

Ответ №1:

Если вы хотите открыть новое окно, вам необходимо использовать start cmd

Если вы хотите открыть новое окно, выполнив команду из cmd, это start cmd /c "command"

например

 import os
os.system('start cmd /c "python -m http.server"')
 

Однако, если вы действительно просто хотите запустить другой процесс python, вы можете импортировать и запустить сервер непосредственно из документов, содержащих ссылки на код

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

1. Это работает для меня только в том случае, если я запускаю python из командной строки. Когда я запускал его с холостого хода, он не работал. Он 0 немедленно возвращается.

2. Я не регулярно использую режим ожидания, но, похоже, он открывает окно CMD, просто не запускает команду. В любом случае вы не стали бы использовать IDLE для запуска кода в реальной среде

3. В любом случае, использование cmd вообще не является портативным. Вы всегда будете использовать Windows? Вы действительно должны использовать модуль многопроцессорной обработки — docs.python.org/3/library/multiprocessing.html

4. Я не уверен, как модуль многопроцессорной обработки поможет мне, потому что мне все еще нужно запустить отдельную программу (я использовал python , но это может быть любая другая программа, например chkdsk ).

5. os.system (или лучше subprocess.Popen ) делает это. Зачем вам нужно новое окно CMD?