零基础入门学习Python(第2版)
上QQ阅读APP看书,第一时间看更新

第2章 用Python设计第一个游戏

2.1 第一个小游戏

视频讲解

有读者可能会很惊讶:“小甲鱼(注:作者),你在开玩笑吗?都还没有开始讲Python语法就教开发游戏啦?难道不打算先讲讲变量、分支、循环、条件、函数等常规的内容吗?”

没错,大家如果继续学下去就会发现,本书的教学会围绕着个性鲜明的实例来展开,跟着本书完成这些实例的编写,你会发觉不知不觉中那些该掌握的知识,已经化作身体的一部分了。这样的学习方式才能充满快乐,并让你一直期待下一章节的到来!

好,今天来讲一下“植物大战僵尸”这款游戏的编写……当然是不可能的,虽然说Python容易入门,但像“植物大战僵尸”这类游戏要涉及碰撞检测、边缘检查、画面刷新、音效等知识点,需要将这些基础知识累积完成才能开始讲。

目前对于我们所掌握的基础知识……貌似只能讲print()这个BIF,哦,BIF的概念甚至还没讲解……不过请淡定,这一点儿也不影响我们今天的节奏。

那么今天是一个什么样的节奏呢?今天打算讲一个文字游戏。

先来看下面这段代码,并试图猜测一下每条语句的作用:

这里要求大家都动动手,亲自输入这些代码,需要做的是:

• 打开IDLE。

• 选择File→New File命令(也可以直接使用Ctrl+N快捷键,在很多地方这个快捷键都是新建一个文件的意思)。

• 将上面的代码依次输入(注意:空白处的缩进是一个Tab的距离)。

• 按快捷键Ctrl+S,将源代码保存为名为p2_1.py的文件。

• 输完代码一起来体验一下,按下F5键,开始运行(也可以选择Run→Run Module命令)。

程序执行结果如下:

提示:

Tab按键的作用:

(1)缩进。

(2)IDLE会提供一些建议,例如,输入“pr TAB”会显示所有可能的命令供参考。

OK,我们是看到程序成功地“跑”起来了,但坦白说,这也配叫游戏吗?呃……没事啦,我们慢慢改进。好,我们说下语法。

有C-like语言(泛指语法类似C语言的编程语言)编程经验的读者可能会受不了,变量呢?声明呢?怎么直接就给变量定义了呢?有些真正零基础的读者可能还不知道什么是变量,不用担心,随着本书内容的展开,大家很快就能掌握相关的知识。有些读者可能发现这个小程序没有任何大括号,好多编程语言都用大括号来表示循环、条件等的作用域,而在Python里是没有的。在Python中,只需要用适当的缩进来表示即可。