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

如本文章标有价格,需议价或其它事情商议请加微信pythonxia

小心你的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

 

本站所有作品,教程等皆为原创,版权所有。只供个人及单位内部研究使用,对外展示或传播必需经本站同意,且注明来自本站。培训机构等用本站资源培训学生,需经本站授权。一旦付款,表示同意本站知识付费原则:数字商品,不支持退款。亦可直接向微信号scratch8付款购买。入住QQ群:225792826 和爱好者共同交流,并且能下载免费提供的Python资源(需提供真实姓名才可入群)
李兴球的博客_Python创意编程技术前沿_pygame » 小心你的Python程序,它会是你的一面镜子。小方块闯迷宫.py源代码简析。
scratch

学本领,探索更大的世界!

李兴球博客 风火轮编程主页