【发布时间】:2019-08-12 10:40:25
【问题描述】:
我想知道是否可以将 Cocoa(Apple 的 API)与 Python 一起使用,以便能够运行像 link 这样的任何代码,以及 NSWorkspace 函数等等,这可能是一个超级愚蠢的问题,但是我还在想这是否可能......
【问题讨论】:
标签: python python-3.x macos cocoa
我想知道是否可以将 Cocoa(Apple 的 API)与 Python 一起使用,以便能够运行像 link 这样的任何代码,以及 NSWorkspace 函数等等,这可能是一个超级愚蠢的问题,但是我还在想这是否可能......
【问题讨论】:
标签: python python-3.x macos cocoa
是的。
有 Python 包,一种围绕 Objective-C 的包装器,像这样安装它们:
$ pip install pyobjc-core
$ pip pyobjc-framework-Cocoa
$ pip pyobjc-framework-Quartz
【讨论】:
from AppKit import NSWorkspace 导入NSWorkspace 后,我使用NSWorkspace.sharedWorkspace().runningApplications() 检索the list of running apps。尝试使用类似的方法,我现在不在 OS X 附近进行检查。
MacOS 默认带有 python 2.7 和 pyObjC 2.5,并且已经使用了多年。如果你想要更新版本的 python,例如 python 3,或者最新版本的 pyObjC,那么你必须自己安装它。
pyObjC is 5.2最新版。
但是,至少从 Snow Leopard 开始默认安装 MacOS,以下应该可以工作:
python
>>> import Appkit
>>> AppKit.NSWorkspace.sharedWorkspace().runningApplications()
Catalina 据说是最后一个捆绑了 python 的版本。
【讨论】: