17

我正在尝试在 Python 中运行音频文件:

from playsound import playsound

def main():
    playsound('audio.mp3')

main()

但是,我不断收到以下错误:

File "/Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages/playsound.py", line 55, in _playsoundOSX
from AppKit     import NSSound
ImportError: No module named 'AppKit'

我在 macOS 10.12.6 上使用 Python 3.5.4。我尝试通过 pip 安装它,但返回此错误:

Using cached AppKit-0.2.8.tar.gz
Requirement already satisfied: flask in /Library/Frameworks/Python.framework/Versions/3.5/lib/python3.5/site-packages (from appkit)
Collecting pygobject (from appkit)
Could not find a version that satisfies the requirement pygobject (from appkit) (from versions: )
No matching distribution found for pygobject (from appkit)
4

4 回答 4

29

如果你想使用 AppKit,你必须安装 PyObjC:

pip3 install -U PyObjC

或者

pip install -U PyObjC
于 2017-11-14T09:05:40.680 回答
3

如果其他人在使用此库时偶然发现此错误,请尝试完全按照问题中首先说明的@user5124826 进行操作,只要您已完成以下操作:

pip3 安装 AppKit

或者

点安装 AppKit

并且还安装了 PyObjC ...无论您在哪里安装了软件包,例如,与 virtualenv 一起使用时 pip 通常会在路径中安装软件包

virtualenv_name>/lib//站点包。

寻找 AppKit 包,它很可能是全小写的。所以它会是appkit。只需将此文件夹更改为“AppKit”,就可以了

于 2019-10-11T03:23:16.420 回答
0

就我而言,它仅适用于 Python 2.7。因为 Python 3 需要小写字母,所以在 import appkit 中会出现错误。

我更新了一个库以使用小型大写字母导入:https ://github.com/TinKurbatoff/appkit

于 2021-07-10T00:50:09.743 回答
0

遇到同样的问题(突然,经过一些系统升级 brew 等后可能)。

我按照 iTerm 的文档从头开始重新安装解决了这个问题。

pip uninstall appkit
pip uninstall iterm2
pip list | grep pyobjc | cut -d ' ' -f 1 | xargs pip uninstall -y

然后,取决于您的系统

pyenv rehash

然后只重新安装 iterm2

pip install iterm2

根据文档,iterm2haspyobjc作为依赖项,它全部提供AppKit,因此不需要额外安装。

于 2021-05-24T09:42:47.293 回答