Python Shell中的权限被拒绝打开应用程序

use*_*345 4 python permissions macos

我尝试使用我的Python Shell打开计算器应用程序,但它说这里被拒绝的许可是最终的结果

"PermissionError:[Errno 13]权限被拒绝"

    import subprocess
    subprocess.call('/Applications/Calculator.app')
Run Code Online (Sandbox Code Playgroud)

我在Mac上这样做,所以任何拥有mac的人都应该有这个应用程序.

Vla*_*lad 6

因为不是可执行文件.要运行MacOS桌面应用程序,您必须从Application包内部运行可执行文件.

如果是计算器运行,试试这个:

import subprocess
subprocess.call('/Applications/Calculator.app/Contents/MacOS/Calculator')
Run Code Online (Sandbox Code Playgroud)

如果你想运行任何应用程序而不需要在包中寻找可执行文件(它并不总是与应用程序名称相同),请使用:

subprocess.call(["/bin/bash","-c","open /Applications/Calculator.app"])
Run Code Online (Sandbox Code Playgroud)