#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.html4. Я не уверен, как модуль многопроцессорной обработки поможет мне, потому что мне все еще нужно запустить отдельную программу (я использовал
python
, но это может быть любая другая программа, напримерchkdsk
).5.
os.system
(или лучшеsubprocess.Popen
) делает это. Зачем вам нужно новое окно CMD?