Я пытаюсь открыть приложения с помощью python. На данный момент, это то, что я получил:Открытые приложения с Python не работают, когда в имени приложения есть пробелы
os.system("open " + "/Applications/" + app + ".app")
(«приложение» является строка с APPNAME, изменения по всему сценарию)
Теперь моя проблема заключается в том, что это работает безупречно, когда я пытаюсь для открытия приложений одним словом для их имени. Как «Блендер» или «Скобки». Однако, если я пытаюсь открыть приложения, такие как Photoshop (который в папке приложений называется «Adobe Photoshop CS6»), ничего не происходит. Я пробовал уже несколько часов, задал много вопросов, многие из них говорили о добавлении «r» перед строкой. Я пробовал это перед каждой частью моей строки, а также пытался инкапсулировать все это между кавычками, но ничего не помогает.
Почему это даже проблема?
Вы действительно выполняете команду оболочки. Угадайте, что 'open Adobe Photoshop CS6.app' означает в оболочке: 3 отдельных аргумента. Вам нужно указать/escape для синтаксиса оболочки, по крайней мере: 'open 'Adobe Photoshop CS6.app''. – deceze
Сказав это, в Python должны быть лучшие способы сделать это, чем проходить через оболочку. – deceze