PyGame 指南/准备就绪
本指南涵盖哪些内容?
首先,本指南涵盖 Python 语言的基本语法和用法,以防您来自其他语言。如果您已经在 Python 中进行过编程,您可以跳过 "Python 快速入门" 部分。
其次,本指南还涵盖了构建功能性 2D 游戏所需的 PyGame 基础知识。"PyGame 快速入门" 快速地介绍了所有基本功能,并提供了示例代码。
在掌握 Python 和 PyGame 的基础知识后,我们将在 "PyGame 菜谱" 中深入构建一些简单的 2D 游戏。
最后,有一个 "快速参考" 指南,分别针对 Python 和 PyGame,之后是 词汇表,以防您需要回顾本书中使用的任何术语。
我需要具备哪些先前的经验?如果您之前已经使用面向对象的语言(如 C++、C# 和/或 Java)进行过编程,那么本指南将最适合您。在 "Python 快速入门" 章节中,我将介绍一些 Python 的基础知识,以便您熟悉其语法,但这并不是一个编程入门课程,它不会涵盖您在之前的课程中会学到的理论和基础知识。
如果我以前没有编程过怎么办?
如果您以前从未参加过编程课程,您也许能够使用本指南开始学习 2D 编程,但您会遇到解决问题的难度障碍——但别担心,网上有很多免费指南可以用来学习!
Python 是一种解释型高级编程语言。在这种情况下,"高级" 指的是更远离机器代码。"高级" 并不意味着它更难——实际上,高级语言通常比 C 等低级语言更容易使用。作为一种语言,Python 可以以面向对象的方式编写(如果您来自 C++/C#/Java 阵营,应该很熟悉),但也支持其他编程范式——或其他代码结构和编写方式。我更喜欢使用面向对象的技术编写游戏。
PyGame 是一个可以与 Python 一起使用的库。库是预先编写的代码,可以在多个程序中重复使用。这通常包括提供新功能的函数和类。
PyGame 处理以下功能:
- 加载和绘制图形
- 加载和播放声音
- 加载字体和绘制文本
- 检测键盘和鼠标输入
此外,PyGame 旨在跨平台使用,因此您可以在自己的机器上编写一个游戏,而您的朋友可以在 Linux、Mac、Windows 甚至移动设备上运行该游戏!
PyGame 网站提供了 PyGame 的下载链接,以及入门教程、PyGame 文档,甚至是用 PyGame 制作的游戏目录。您创建游戏后,也可以将您的游戏放到目录中!PyGame 网站地址为 pygame.org
对于 Windows,您需要从这里下载 PyGame 的版本:http://pygame.org/download.shtml
找到 "Windows" 标题并下载标题中包含 "py2.7" 的 PyGame 版本。在撰写本文时,最新版本为 pygame-1.9.1.win32-py2.7.msi。
Python 版本
Python 的版本 2 和版本 3 之间存在很多差异,并且彼此之间并不总是兼容。此版本的 PyGame 使用 Python 2.7。 |
(Windows 指示正在进行中)
(Linux 指示正在进行中)
如果您使用的是 Ubuntu、Linux Mint 或 Debian,则应该能够通过 Synaptic 包管理器甚至软件管理器安装 Python。
搜索 "pygame",您应该下载 python-pygame 包。它还应该同时安装 Python 依赖项。
(Mac 指示正在进行中)
对于 Mac,您需要从这里下载 PyGame 的版本:http://pygame.org/download.shtml
找到 "Macintosh" 标题并下载 py2.7 版本。
源代码都是文本,因此您需要一个不错的文本编辑器来编写。Windows 默认的记事本是一个很糟糕的程序,因此您应该下载其他工具。
Geany 是一款免费的跨平台编辑器。您也可以在 Geany 中安装额外的插件来自定义它。从以下地址下载:http://www.geany.org/Download/Releases
(文本编辑器说明正在进行中)
让我们通过一些小的示例程序确保 Python 和 PyGame 能够正常工作。您可以重新输入本文档中给出的代码,或者从指南库中下载文件:bitbucket.org/moosaderllc/rachels-pygame-guide
首先,在您的计算机上创建一个用于 Python 项目的目录,并为该项目创建一个文件夹(“Testing Python”或其他名称)。首先,我们将只创建一个 Python 程序,然后我们将创建一个 PyGame 程序。
在 Geany 中,创建一个新文件,并将其保存到您的项目目录中,命名为 simple python.py。确保它具有 .py 扩展名 - 所有 Python 源文件都必须以它结尾。
Windows 注意!
如果您使用的是 Windows,您的文件夹选项可能设置为默认情况下隐藏文件扩展名。您可能需要将所有扩展名设置为可见,这样您就不会感到困惑! |
将以下代码添加到您的源文件中
print( "Hello, world!" )
for i in range( 1, 10 ):
print( i )
如果您使用的是 Geany,您可以通过按 F5 运行 Python 程序。
运行完成后,Python 程序输出应该如下所示
Hello, world! 1 2 3 4 5 6 7 8 9
接下来,我们将创建一个简单的 PyGame 测试,以确保我们可以打开一个窗口。创建一个名为 simple pygame.py 的另一个源文件。将以下代码粘贴进去。如果您还不了解代码,请不要担心 - 这只是为了确保一切都设置正确!
import pygame, sys
from pygame.locals import *
pygame.init()
timer = pygame.time.Clock()
window = pygame.display.set_mode( ( 300, 300 ) )
pygame.display.set_caption( "Testing out PyGame!" )
# Game loop
while True:
window.fill( pygame.Color( 50, 200, 255 ) )
# Check input
for event in pygame.event.get():
if ( event.type == QUIT ):
pygame.quit()
sys.exit()
# Update screen
pygame.display.update()
timer.tick( 30 )
运行后,您应该会得到一个带有浅蓝色背景的小窗口。
完成操作后,您可以关闭窗口。
如果它没有工作怎么办?!
有时会发生这种情况!如果您在运行程序时遇到问题,您可以执行一些操作来调试它...
- 仔细检查所有文本和符号是否有错别字 - 这些错误很容易出现!还要确保您的大小写正确,PyThOn 是 CaSe SeNsItIvE 的!
- 从 库 中下载文件,并尝试运行它。比较我的代码和您的代码,看看有什么不同。
- 搜索您收到的错误消息 - 很可能其他人也遇到过同样的问题!
如何从库中下载文件?
您可以在以下链接找到库:https://bitbucket.org/moosaderllc/rachels-pygame-guide/。在该页面上,如果您熟悉 Git,可以使用 Clone 按钮,或者您可以点击 Downloads 找到一个链接,将所有文件下载到您的计算机上。
下一步是什么?
干得好!接下来,我们将介绍 Python 的一些功能,以便您熟悉它的语法!