Skip to main content
 首页 » 编程设计

python之在 Mac OS X 上使用 Python3 的 Pygame

2025年05月04日8jyk

在 pygame 的官方网站 pygame.org 中,没有支持 python3 的 pygame 版本。虽然我需要用 python3 编写我的 pygame,但我在网站和网络上进行了搜索,但没有找到任何结果。 在 Mac OS X 中为 python3 安装 pygame 的唯一教程是 site .

当我按照这个 - 用 brew 安装 - 有几个问题。 首先:brew install sdl sdl_image sdl_mixer sdl_ttf smpeg portmidi 给我错误:

Error: No available formula for smpeg  
Searching taps... 

还有命令 /usr/local/share/python3/easy_install pip 终端说这个位置没有文件夹。

干杯。

请您参考如下方法:

您的问题是您关注的博客文章已经过时多年,而且现在非常不准确。我可以告诉你所有明显的错误,以及是什么导致了你的具体错误;我不能保证修复这些问题会让它正常工作。


Homebrew 的 Python 包包括 pip,所以你不应该尝试安装它。如果您想升级它,您应该使用pip 本身来执行此操作,如您运行brew install python3 时的输出中所解释的那样。 (如果你错过了,你可以 brew unlink python3 然后再次 brew link python3 ,重新构建和安装它。)


Python 包也不再将二进制文件放在 /usr/local/share/python[3] 中。默认情况下,它会将它们安装到地窖目录中,然后将它们符号链接(symbolic link)到 /usr/local/bin。但是,不要依赖于 2013 年底的默认值:当您执行 brew install python3 时,如果它为您提供了放置在 PATH 上的路径,请执行它;否则,它应该可以正常工作。


pip 安装了 pip3 和 pip-3.3,所以(除非你有另一个 Python 3.3——你不应该),你应该能够——也应该——只运行 pip-3.3,而不是键入绝对路径。


Homebrew 已经很久没有包含 smpeg 了。我很确定 PyGame 的 3.x 端口无论如何都不能正确处理 MPEG-1 视频,即使对于 2.x,他们也不再将其列为 MacCompile 的要求。页面或其他任何地方。而且,即使它确实支持smpeg,您真的需要在您的游戏中播放 MPEG-1 视频吗?如果没有,就不要安装 smpeg。

如果您确实需要它,您可以将它安装为一个head-only 包。参见 #18195了解一些细节。


另请注意,如果您计划使用 py2app 或类似工具将您的游戏分发给其他人,您需要 python.org binary installer对于 Python,可能还需要 libsdl.org binary SDK对于 SDL。否则,您最终会得到专门为您的系统构建的软件包,这些软件包可能无法在较早的 OS X 上运行,甚至可能无法在同一版本的另一个 OS X 上运行。如果您知道您正在使用 Mac OS X SDK 做什么,您可以自己解决这个问题,但如果您还不知道如何去做,现在不是学习的时候。


最后,如果您无法安装您认为需要的所有先决条件,PyGame 安装过程会告诉您缺少什么,因此您可以运行它,看看它找不到什么,然后决定其中的哪些,如果有的话,对你很重要。