У меня есть сценарий Python, который должен выполнять внешнюю программу, но по какой-то причине не работает.
Если у меня есть следующий скрипт:
import os;
os.system("C:\\Temp\\a b c\\Notepad.exe");
raw_input();
Затем он выходит из строя со следующей ошибкой:
"C:\Temp\a" не распознается как внутренняя или внешняя команда, операционная программа или командный файл.
Если я уйду из программы с кавычками:
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe"');
raw_input();
Тогда это работает. Однако, если я добавлю параметр, он перестанет работать снова:
import os;
os.system('"C:\\Temp\\a b c\\Notepad.exe" "C:\\test.txt"');
raw_input();
Каков правильный способ выполнения программы и ждать завершения? Мне не нужно читать вывод из него, так как это визуальная программа, которая выполняет задание, а затем просто выходит, но мне нужно дождаться завершения.
Также обратите внимание, что перемещение программы на нерасширенный путь тоже не является вариантом.
Это тоже не работает:
import os;
os.system("'C:\\Temp\\a b c\\Notepad.exe'");
raw_input();
Обратите внимание на замененные одиночные/двойные кавычки.
С или без параметра "Блокнот" здесь он выходит из строя с сообщением об ошибке
Неверное имя файла, имя каталога или тома.