小心你的Python程序,它会是你的一面镜子。小方块闯迷宫.py源代码简析。

40 篇文章 4 订阅
7 篇文章 0 订阅

小心你的Python程序,它会是你的一面镜子。送Scratch算法集。不要说我不“地道”,送些你看不懂的东西,算法这东西本来,就只属于极少部分人。你突破不了自己的认知,那就不要去下载了。

李兴球Python小方块闯迷宫撒切尔夫人

李兴球Python小方块闯迷宫撒切尔夫人

也据说撒切尔夫人说过下面的话:“

小心你的思想,它会变成你的语言;

小心你的语言,它会变成你的行动;

小心你的行动,它会变成你的习惯;

小心你的习惯,它会变成你的性格;

小心你的性格,它会变成你的命运。”

李兴球Python之手

所以命运,是由自己决定的。客观只是外在,客观一直在给你创造条件。只是你自己不够而已。OK,我只是普通人,但我也可以说,是吧。

小心你的程序,它会是你的一面镜子。

小心你的镜子,它会折射出你的人生。

so,我们一定要把程序写好,写得棒棒的。

话说,gameturtle可是趣味学习tkinter编程的好帮手。

今天晚上我在“日理万机的百忙之中”挤出了一点时间用gameturtle模块写了一个简单的程序。这个程序运行后,按上下左右方向箭头,操作一个红色的小方块在迷宫里移动。

李兴球Python闯迷宫小红块移动

红色小方块碰到迷宫是不会穿越过去的。程序不是很长,下面是代码图。程序分成一段段,只要理解每段代码的含义,即可理解整个程序的运作原理。

代码如下所示:

上面的程序主要的指令,在后面都有注释。

第1块代码是导入了一些命令。这里主要说一下从gameturtel模块导入的Sprite命令。它是一个类。我们可以用它实例化一个角色。它的第一个参数需要是画布。第二个参数可以不写。如果不写,那么将会是一只小海龟。如果写的话,可以像本例中那样的图形。也可以是一个列表,列表中有每张pillow图形对象,表示角色的每一帧图。

第2块代码是用tkinter的Tk命令新建了一个窗口,然后新建了一块画布,背景色是青色。

第3块代码是新建迷宫图,贴在画布上。如果直接用画布的create_image命令创建图形,那么碰撞检测将无效。

第4块代码是新建红色小方块的代码。注意在用Sprite类实例化角色时,第一个参数是画布的名称。要本例中是cv,第二个参数是square。它是用Image.new命令新建的一个红色图像。

第5块代码是定义了4个函数,分别对应第6大块代码中的4个绑定!

第6块代码是绑定画布的上下左右按键的回调函数。

这样,按右方向箭头会调用moveright函数。

按左方向箭头会调用moveleft函数。

按上方向箭头会调用moveup函数。

按下方向箭头会调用movedown函数。

最后一块代码是设置画布为焦点组件,这样才能响应按键检测。

root.mainloop是进入事件主循环,这行代码一定要在程序的最后一行。

好了,大概30行代码,我们就开发了一个简单的迷宫游戏。

读者可以把它修改成多关卡的等等。我这里就不会继续,抛块砖,看能否引块玉。

 

关注李兴球Python公众号,回复mazeturtle可得到本程序所有源代码和素材。

李兴球Python公众号小方块闯迷宫
附赠:Scratch算法集下载网址:
链接:https://pan.baidu.com/s/1ElGICc4vIz1IhbfC-fAwvQ
提取码:k2qq

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

李兴球

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值