【发布时间】:2016-07-12 13:49:34
【问题描述】:
我正在尝试使用 python 打开应用程序。目前,这就是我得到的:
os.system("open " + "/Applications/" + app + ".app")
('app' 是一个带有 appname 的字符串,在整个脚本中会发生变化)
现在,我的问题是,当我尝试用一个单词作为名称打开应用程序时,它无法正常工作。像“搅拌机”或“括号”。但是,如果我尝试打开诸如 photoshop 之类的应用程序(在应用程序文件夹中名为“Adobe Photoshop CS6”),则什么也不会发生。我已经尝试了几个小时,经历了很多问题,其中许多都在谈论在字符串前添加一个“r”。我在字符串的每个部分之前都尝试过这个,并且还尝试将它全部封装在引号之间,但没有任何帮助。
为什么这甚至是一个问题?
【问题讨论】:
-
你真的在执行一个shell命令。猜猜
open Adobe Photoshop CS6.app在 shell 中的含义:3 个单独的参数。您至少需要为 shell 语法引用/转义:open 'Adobe Photoshop CS6.app'。 -
话虽如此,在 Python 中一定有比通过 shell 更好的方法来做到这一点。
标签: macos python-3.x os.system