在 Ubuntu 中安装 Python 3.1.2 的 Pygame

发布于 2024-11-17 20:28:43 字数 934 浏览 2 评论 0原文

我正在阅读 Paul Craven 所著的《使用 Python 和 Pygame 的计算机科学入门》一书(注:可合法免费在线获取)。在书中,他结合使用了 Python 3.1.3 和 Pygame 1.9.1 。在我的 Linux Ubuntu 机器中,我有 Python 3.1.2,但即使在我 sudo apt-get 安装了 python-pygame (版本 1.9.1)后,Python 3.1.2 也无法导入 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?

感谢您的指点。 (--,)

I'm reading the book Introduction to Computer Science Using Python and Pygame by Paul Craven (note: legally available for free online). In the book, he uses a combination of Python 3.1.3 and 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 imports it without fuss, however,

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
>>> 

Are you aware of any issues for Linux/Ubuntu's Python 3.1.2 (Prof. Craven used Windows in his book)? How come Pygame 1.9.1 worked for Python 3.1.3 but not for 3.1.2?

Thanks for any pointers. (--,)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(7

新人笑 2024-11-24 20:28:43

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 on Python 3 remains experimental, but these steps worked for me on 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

(You may remove the -u 01b2cb16dc17 to try the latest version; 01b2cb16dc17 worked for me.)

羁客 2024-11-24 20:28:43

我讨厌重新打开一篇旧帖子,但我在使用非 Ubuntu 默认版本的 python 版本安装 pygame 时遇到了最困难的时刻。所以我创建了这个教程/如何:

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

我希望这能帮助下一个不幸的人尝试这个。

I hate to re-open an old post, but I had the hardest time installing pygame with a version of python that was not Ubuntu's default build. So I created this tutorial/ how to:

Install python3.1 and pygame1.9.1 in Ubuntu

I hopes this helps the next unfortunate soul to try this.

阳光①夏 2024-11-24 20:28:43

我在 Ubuntu 16.04.7 上使用 pip3用于安装和管理 Python 包的工具)命令非常轻松地安装了 pygame for python3长期支持。

  1. 打开终端并安装pip3,输入sudo apt install python3-pip
  2. 现在使用它来安装python3pygame ,输入 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
>>> 

I installed pygame for python3 quite easily using the pip3 (a tool for installing and managing Python packages) command on Ubuntu 16.04.7 LTS.

  1. Open a terminal and install pip3, type sudo apt install python3-pip
  2. Now use it to install pygame for python3, type pip3 install pygame

That's it! Import the library and confirm that everything works:

# 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
>>> 
画骨成沙 2024-11-24 20:28:43

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

唯一的复杂之处是最后一行出现了一些编译错误,这一切都是由于 Python 2 和 Python 3 之间的语法和 unicode 差异造成的,但是通过稍微检查一下 Web 文档,只需几分钟即可使用文本编辑器修改以下文件(所有路径都相对于下载期间创建的 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”。

I followed @Søren 's method, but without the -u number.

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 following files (all paths are relative to the pygame directory created during the download):

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 

The line numbers from the compiler error messages are great for giving you where to start. The things to look out for are:

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

Then re-issue the final compilation command:

sudo python3 setup.py install

If you miss one or two or get it wrong, just keep going round the loop editing and re-compiling till it works.

BTW I deliberately did not give details of the compiler messages, because I expect they will depend on the current build you download. The files I needed to change were for version '1.9.2pre' downloaded as of the date on this post.

秋风の叶未落 2024-11-24 20:28:43

只需使用以下命令安装 Python3 的 pygame。我可以在 Ubuntu 16.04 和 Python Python 3.5.2 上正确安装 pygame。

pip3安装pygame

Just use the below command to install pygame for Python3. I could install pygame correctly on Ubuntu 16.04 and Python Python 3.5.2.

pip3 install pygame

拍不死你 2024-11-24 20:28:43

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

It's because installing the python-pygame package installs it for the default version of Python on your system, 2.6.5 in this case. You should download the pygame package and use setup.py to install it in 3.1.2.

但可醉心 2024-11-24 20:28:43

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

The python-pygame package is only compiled for python2.6 and python2.7 where I am. You'll have to install it again, possibly from a python3 branch of the source.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文