使用 Python 打开应用程序,当应用程序名称中有空格时不起作用
Open applications with Python, doesn't work when there are spaces in app name
我正在尝试使用 python 打开应用程序。目前,这是我得到的:
os.system("open " + "/Applications/" + app + ".app")
('app' 是一个带有 appname 的字符串,在整个脚本中变化)
现在,我的问题是,当我尝试用一个单词作为名称打开应用程序时,它会完美运行。像 "Blender" 或 "Brackets"。但是,如果我尝试打开 photoshop 等应用程序(在应用程序文件夹中名为 "Adobe Photoshop CS6"),则没有任何反应。我现在已经尝试了几个小时,经历了很多问题,其中很多都在谈论在字符串前添加 'r' 。我在我的字符串的每个部分之前都尝试过这个,并且还尝试将它全部封装在引号之间但没有任何帮助。
为什么这是个问题?
在 .app
位周围添加引号:
os.system("open " + "'/Applications/" + app + ".app'")
^ ^
所以它扩展为:
open '/Application/Hello World.app'
你可能应该使用 subprocess.call()
无论如何,它接受数组元素中的参数并且不会遇到这个问题。
我正在尝试使用 python 打开应用程序。目前,这是我得到的:
os.system("open " + "/Applications/" + app + ".app")
('app' 是一个带有 appname 的字符串,在整个脚本中变化)
现在,我的问题是,当我尝试用一个单词作为名称打开应用程序时,它会完美运行。像 "Blender" 或 "Brackets"。但是,如果我尝试打开 photoshop 等应用程序(在应用程序文件夹中名为 "Adobe Photoshop CS6"),则没有任何反应。我现在已经尝试了几个小时,经历了很多问题,其中很多都在谈论在字符串前添加 'r' 。我在我的字符串的每个部分之前都尝试过这个,并且还尝试将它全部封装在引号之间但没有任何帮助。
为什么这是个问题?
在 .app
位周围添加引号:
os.system("open " + "'/Applications/" + app + ".app'")
^ ^
所以它扩展为:
open '/Application/Hello World.app'
你可能应该使用 subprocess.call()
无论如何,它接受数组元素中的参数并且不会遇到这个问题。