原标题:童年听的龟兔赛跑的故事,我终于用100行Python实现了!

龟兔赛跑是伊索寓言中一个耳熟能详的故事,相信大家都是听着这个故事长大的,在故事中,偷懒的兔子输给了勤劳的乌龟,启发我们要像乌龟一样勤劳。

今天,小编就带大家重温龟兔赛跑的故事,使用Python来进行龟兔赛跑的绘制。

01 Turtle库的介绍

Turtle库是Python中最常使用的一个库,也是Python语言入门的首选库,通过模拟一只海龟在面板上进行爬行绘制想要的图案,受到了Python玩家的极大欢迎。

在Python的官方文档中,提供了许多精美图案的绘制,感兴趣的可以前往学习,

链接如下: https://docs.python.org/3.7/library/turtle.html

在这里,小编将介绍在本次绘制中使用的基本命令,方便大家进行下一步的学习。

02 游戏绘制

熟悉了将要使用的基本命令后,将进行进一步的绘制过程,主要包含了 画布的绘制、动物的设计和赛跑三个部分,下面将一步一步进行解析。

1).画布绘制

画布的绘制包含了背景板、起点线、终点线的绘制,详细代码如下,效果如下。

关于背景板中起点线、布局、以及题目的绘制,根据尺寸确定好点的位置,进行绘制填充即可,在这里主要介绍下关于终点线的绘制,首先将光标设置为方块,在指定坐标进行盖章操作,便可得到终点线的图案。

2).动物绘制

在选择动物图标时,因为turtle库中设计中已经包含了turtle图案,不需要进行设计替换,而兔子在库中是没有提供的, 小编通过资料的查询,使用turtle.register_shape("tuzi.gif"),turtle.shape("tuzi.gif")命令进行了替换,所选的图片格式必须为.gif后缀,否则系统将会报错。

在进行多个乌龟的设计时,调用Turtle类,创建多个对象作为乌龟对象,并通过turtle_make(turtle_name,colors,position)函数对其进行初始化,使其有序排列,兔子的方位仍是同样的方法,绘制的整体效果如下图所示:

3).赛跑

完成了画布和动物的设计之后,便要进行动物跑步的设计, 考虑到乌龟和兔子的运动关系,乌龟运动速度在(1,5)之间随机进行选择,兔子速度则为(4,8)。

此外,兔子还有睡觉行为,比赛的规则是,当其中一方率先到达终点后,便停止比赛,公布第一名的成绩。

在程序中,我们可以看到,对于乌龟,采用随机速度进行爬行,每次循环都“勤奋”的进行爬行,而兔子虽然速度更快,但会存在“偷懒”(随机睡眠),影响整体进程。

在For循环中,每只动物依次运行,由于其程序刷新率远大于人眼,人眼会看到同时运动的情形,当五只动物中任意一只到达终点时,比赛结束。

一起看一下,演示效果

学了Python这么久,这次我终于用Python实现了童年的故事,发现还是很有趣的,有兴趣的同学可以试试哦!

限于篇幅,我们的源码没有一行一行讲讲,我们会录制详细的视频,在B站上给大家讲解,有兴趣的同学可以看一下,尝个鲜。

需要源码,可以通过下面的方式获取!

2.后台输入:【龟兔】

获取源码

我们在B站上录制了大量的视频,欢迎大家交流学习

1). 花木兰到底好看不,我用Python爬取上万条评论

2). 80行Python代码一键轻松把Pdf转word

3). 用Python一键把图片转漫画

4). 再见付费软件,我用70行Python搞定

5). 用Python分析“青春有你2”

6). 用Python三步制作短视频

7). 用Python实现一个弹球游戏

8). 10行代码实现美图秀秀

9). 50行代码用Python批量做海量小姐姐素描图

点这里,直达菜鸟学Python B站返回搜狐,查看更多

责任编辑:

python turtle 乌龟赛跑_童年听的龟兔赛跑的故事,我终于用100行Python实现了!相关推荐

  1. python turtle 乌龟赛跑_用 Python Turtle 模块做小游戏 (2) - 画笔和乌龟赛跑

    上一篇 豆子学习了基本的Turtle的使用,比如移动,定位,色彩等等.这次来看看他对事件的处理功能. 首先来看看个小游戏,通过几个按键的事件,实现 w(前进),s ( 后退),a (左转),d (右转 ...

  2. python turtle 乌龟赛跑_Python编程 | 海龟绘图:Turtle Race 海龟赛跑游戏

    AD: 购买本站源码请联系QQ677123或右侧QQ在线. 老师介绍 郑Sir@天港成编程营 郑Sir@天港成编程营 零基础 python 入门,在游戏中学会编程 ,不可错过的python编程课,免费 ...

  3. 怎样在python代码中输入π_鼠标自动点击、键盘自动输入?几行Python代码搞定

    相信我,你以后一定会用到.实在不行,你先收藏,做个收藏家,等拿出来,就值钱了. 第一步:安装并导入相关模块 只需要安装PyUserInput,如下: pip install PyUserInput 如 ...

  4. python模拟别人说话的声音_如何用100行Python代码做出魔性声控游戏“八分音符酱”...

    最近几天,一款魔性的小游戏在微博上刷屏了,各大平台的主播也纷纷如感染病毒一样直播自己怎么玩这个游戏(被游戏玩). 这个游戏叫做<不要停!八分音符酱♪>.它是一款来自岛国的恶搞游戏,主角是一 ...

  5. 100个必会的python脚本-100行Python代码实现自动抢火车票(附源码)

    前言 又要过年了,今年你不妨自己写一段代码来抢回家的火车票,是不是很Cool.下面话不多说了,来一起看看详细的介绍吧. 先准备好: 12306网站用户名和密码 chrome浏览器及下载chromedr ...

  6. c语言微信挑一挑编程,100行python代码实现微信跳一跳辅助程序

    写在前面 分享一下今天下午用python写的"跳一跳"小游戏的辅助程序.之前是准备用树莓派操控一个"机械手指"来代替人的触摸操作,但该方案还在酝酿中,实现了再分 ...

  7. 100行python代码做一个程序_100行python代码实现微信跳一跳辅助程序

    写在前面 分享一下今天下午用python写的"跳一跳"小游戏的辅助程序.之前是准备用树莓派操控一个"机械手指"来代替人的触摸操作,但该方案还在酝酿中,实现了再分 ...

  8. python turtle库画图_《体验Python中turtle库画图》教学设计

    <体验Python中turtle库画图>教学设计 射阳县高级中学 张珊珊 学情分析: 学生从未接触过编程,因此通过画图来提高学生的学习积极性,而Python语言相较其他语言简单易学,程序里 ...

  9. python canvas画弧度_「万圣节教程」不给糖就捣乱,用Python绘制有趣的万圣节南瓜怪...

    关于万圣节 万圣节又叫诸圣节,在每年的11月1日,是西方的传统节日;而万圣节前夜的10月31日是这个节日最热闹的时刻.在中文里,常常把万圣节前夜(Halloween)讹译为万圣节(All Saints ...

  10. python实现新闻网站_如何用 100 行 Python 代码实现新闻爬虫?这样可算成功?

    每天我都要坐地铁上班,而地铁里信号差.但我希望在坐地铁的时候读些新闻,于是就写了下面这个新闻爬虫.我并没有打算做很漂亮的应用,所以只完成了原型,它可以满足我最基本的需求.其思路很简单: 找到新闻源;用 ...

最新文章

  1. 关于登录记住密码使用cookie的详解
  2. CentOS 6.5环境实现corosync+pacemaker实现DRBD高可用
  3. 干掉 if 语句,一个不留的那种!
  4. python 消息机制_Python并发编程之线程消息通信机制任务协调(四)
  5. 【转】ASP.NET ViewState详解
  6. Shell基本应用(学习笔记)
  7. git 删除已经 add 的文件
  8. C语言结构体定义 typedef struct
  9. WINDOWS XP优化批处理
  10. Mac里的airdrop传输文件
  11. 五子棋项目结束总结_UML五子棋设计总结.doc
  12. 按职能和级别来分,UI设计师能胜任哪些高薪岗位?
  13. 求求你学学医疗保险小知识吧
  14. web 视频演示,MP4小视频免费下载
  15. FileZilla的下载与安装以及简单使用(有图解超简单)
  16. 没有测试实践就没有发言权
  17. Java树形菜单的构建、遍历以及获取树形菜单的Id集合List
  18. 虚拟机防火墙关了怎么端口还是不能访问
  19. android多级列表
  20. php iphone壁纸,iphone 壁纸尺寸 PHP 图像尺寸调整代码

热门文章

  1. Vue根据directive指令进行div拖拽,解决拖拽drag后触发点击click事件,并在directive中调用this
  2. asio Tcp服务退出时崩溃bug
  3. 电脑开机没反应怎么办?
  4. 数学建模常用算法:人工鱼群算法(AFAS)求解二元函数最小值+限定x,y范围测试【java实现--详细注释+Matlab绘制小鱼游动过程】
  5. 深度学习:透过神经网络的内在灵魂与柏拉图的哲学理念
  6. 世界时间经纬_世界主要城市经纬度及时区列表
  7. html背景消除重复,html – CSS背景渐变重复问题
  8. unity动画之帧动画使用
  9. fatal error LNK1104:无法打开***.exe
  10. 计算与推断思维 十一、估计