繁体   English   中英

在 Ubuntu 中为 Python 3.1.2 安装 Pygame

[英]Installing Pygame for Python 3.1.2 in Ubuntu

我正在阅读 Paul Craven 的《使用 Python 和 Pygame 的计算机科学导论》一书(注意:可合法免费在线获得)。 在书中,他使用了 Python 3.1.3 和 Pygame 1.9.1 的组合。 In my Linux Ubuntu machine, I have Python 3.1.2 but even after I sudo apt-get installed python-pygame (version 1.9.1), Python 3.1.2 can't import pygame.

Python 3.1.2 (r312:79147, Sep 27 2010, 09:45:41) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygame
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named pygame

Python 2.6.5 毫不费力地导入它,但是,

Python 2.6.5 (r265:79063, Apr 16 2010, 13:09:56) 
[GCC 4.4.3] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import pygame
>>> 

您是否知道 Linux/Ubuntu 的 Python 3.1.2 的任何问题(Craven 教授在他的书中使用了 Windows)? Pygame 1.9.1 为何适用于 Python 3.1.3 但不适用于 3.1.2?

感谢您的任何指示。 (--,)

Python 3 上的 PyGame 仍处于试验阶段,但这些步骤在 Ubuntu 11.10 上对我有用:

sudo apt-get install mercurial python3-dev libjpeg-dev libpng12-dev libportmidi-dev libsdl-image1.2-dev libsdl-mixer1.2-dev libsdl-ttf2.0-dev libsdl1.2-dev libsmpeg-dev libx11-dev ttf-freefont libavformat-dev libswscale-dev
hg clone -u 01b2cb16dc17 https://bitbucket.org/pygame/pygame
cd pygame
python3 config.py
2to3 setup.py -w
python3 setup.py build
sudo python3 setup.py install

(您可以删除-u 01b2cb16dc17以尝试最新版本; 01b2cb16dc17为我工作。)

我讨厌重新打开一个旧帖子,但我最难安装 pygame 版本的 python 不是 Ubuntu 的默认版本。 所以我创建了本教程/如何:

在Ubuntu中安装python3.1和pygame1.9.1

我希望这有助于下一个不幸的灵魂尝试这个。

我在 Ubuntu L604 上使用pip3用于安装和管理 Python 包的工具)命令很容易地为 python3安装了pygame

  1. 打开终端并安装pip3 ,输入sudo apt install python3-pip
  2. 现在用它为python3安装pygame ,输入pip3 install pygame

就是这样:导入库并确认一切正常:

# I'll try it out using the python 3 interpreter.
python3 --version
Python 3.5.2
robert@robert-E7212:~/Source/Python/python_crash_course/alien_invasion$ python3
Python 3.5.2 (default, Oct  7 2020, 17:19:02) 
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
# No errors, pygame was imported successfully!
>>> import pygame
pygame 2.0.0 (SDL 2.0.12, python 3.5.2)
Hello from the pygame community. https://www.pygame.org/contribute.html
>>> 

我遵循@Søren 的方法,但没有 -u 号码。

The only complication was a few compilation errors at the last line, all due to syntax and unicode differences between Python 2 and Python 3, but with a little checking of the web documentation it was a matter of a few minutes with a text editor modifying the以下文件(所有路径都相对于下载期间创建的 pygame 目录):

gedit build/lib.linux-x86_64-3.2/pygame/colordict.py 
gedit build/lib.linux-x86_64-3.2/pygame/tests/test-utils/png.py 
gedit build/lib.linux-x86_64-3.2/pygame/examples/movieplayer.py 

编译器错误消息中的行号非常适合为您提供从哪里开始。 需要注意的事项是:

1 remove all references to u"xxxx" colours
2 use Python3 syntax for exceptions
3 change all print commands to Python3 equivalents

然后重新发出最终的编译命令:

sudo python3 setup.py install

如果你错过了一两个或弄错了,只需继续循环编辑并重新编译直到它工作。

顺便说一句,我故意没有提供编译器消息的详细信息,因为我希望它们将取决于您下载的当前版本。 我需要更改的文件是截至本文发布之日下载的“1.9.2pre”版本。

只需使用以下命令为 Python3 安装 pygame。 I could install pygame correctly on Ubuntu 16.04 and Python Python 3.5.2.

pip3 安装 pygame

这是因为在您的系统上安装python-pygame package 会为默认版本的 Python 安装它,在这种情况下为 2.6.5。 您应该下载 pygame package 并使用 setup.py 在 3.1.2 中安装它。

python-pygame package 仅针对我所在的 python2.6 和 python2.7 编译。 您必须再次安装它,可能来自源代码的 python3 分支。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM