用Python编写第一个游戏

我们今天来做第一个小游戏,

有人会说"为什么今天讲游戏呢,你不打算给我们讲讲变量啊,循环啊,条件分支啊,函数啊?!"

没错,在跟着我学下去的同学可能会发现,Bobby先是用打代码的方式展示,然后再解释这是什么意思。这样就会有一定的好处,这样更便于大家记住。

我们今天做的是一个叫植物大战僵尸的游戏,什么?有些人会说,现在怎么能做出植物大战僵尸?

亲爱的同学,恭喜你,猜对了,虽然Python简单,看起来舒服,但是像植物大战僵尸之中游戏是有一定的难度的,像播放音效啊,碰撞检测啊,边缘检查等。我们现在是做不出来的,植物大战僵尸属于中后期的挑战。

那么我们今天做的是一个猜字符串的小游戏,最后效果是这样子的:

首先,打开你的IDLE

如果你下载了,但是找不到,请在所有程序里搜索IDLE,然后进入 。

如果你还没有下载,请跳到第一节课去学习

如果你下载不了,请尝试Bobby的备份,到下载菜单里面,点击软件下载,即可下载(如果没有,等一会再来看看吧)

好了,相信你已经打开了IDLE,我们用Ctrl+N新建一个项目,或者你用File -> New File(3.4以下是New Window)

然后输入:bingo = "Bobby是帅哥"

这里我们定义了一个变量:bingo,

反正你把这个变量叫什么都行:比如:答案,目标,变量一,temp,Python,Window都行, 我们把变量赋值为Bobby是帅哥,这是我们要猜的内容,我们用一个等号代表赋值(=),两个等号代表是否相等(==)这点非常重要,否则会出现Bug(程序漏洞)还有一点变量在左边,值在右边,并且值要加双引号(除非是变量)。

然后再下一行,我们再次输入:guess = str(input('请输入Bobby最爱听的一句话^_^(猜对了才能结束):'))。

变色的内容是要添加的,我们在这里再次定义了一个变量叫guess,他等于str(input('请输入Bobby最爱听的一句话^_^(猜对了才能结束):')),

str()的意思是,后方是一个字符串,

同样,int()表示后面是一个整形(不带小数点的数字,比如3,5,6,8,345,346,325,152),

float()表示后边是一个浮点数(带小数点的数字,如3.1415923,5.1238927,2.009, 6.19),

input()表示让用户输入一个东西它有一个参数(有参数的函数就在后方括号内写入)

它的第一个参数就是让CPU(电脑)先打印它的第一个参数,

后面让用户输入(为了让用户看的轻松,所以我们就在后面的一个冒号(:))

(注意,input()的参数是一个字符串,如果不想是字符串,就写一个变量)。

然后在下一行写上while True:(或者while 1:)(后面要加冒号)

这句话的意思是:重复执行,永远不要停下来(如果有break或continue就会退出循环)

while 条件也是while的一种,当条件为真就退出,不是真的话就一直执行下去(直到按下Ctrl+c或ctrl+d停止程序,但是会报错)

接下来进入下一步的代码,输入if bingo == guess:

if就是如果的意思,

如果bingo这个变量=你猜的内容,

那么,执行下面的内容

注意,格式是这样的 if 变量1==变量2:

注意三处地方。1:等于号是两个2。条件写完以后要加冒号(:)注意是英文。3:前面要有一个缩进(Tab键,左上角的tab)表示这条语句要按上面的规定执行,在C语言中是大括号{}

接下来输入 print("猜对啦")

这条语句在上节课讲过,请点跟它表示的意思

然后再下一行写下break,

break表示退出循环,执行最后面的事(退出一层循环)

这条语句很简单,一般只要知道他的意思(断开),就知道用处啦^_^

然后来到下一行,

按一下Backspace键,然后输入else:

else 和 if 还有elif是好基友,关于elif,我们明天再讲,else是否则的意思,如果上面的if的条件不成立,那么执行这里的代码(注意,else后面没有条件!并且else在后面,if在前面)。

然后再次输入guess = str(input('抱歉,输入错误,请输入Bobby最爱听的一句话^_^(猜对了才能结束):'))

这条代码和第二条代码很像,意思是一样的,所以不再多说,看不懂到的朋友请到第二条代码去寻找答案,

然后输入两个Backspace键然后输入:

print("哎呦,帅哦~")

print("您真是Bobby肚子里的蛔虫啊^_^")

这是两条代码,都在上节课讲过,写完的朋友们可以运行试一下了。

所有代码:

代码注释:

苹果用户请长按此二维码给Bobby赞赏

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180220G0CWEI00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。

扫码关注云+社区

领取腾讯云代金券