python海龟绘图颜色_python中利用turtle(海龟)绘图制作龟兔赛跑动画——仅供学习...
python中利用turtle(海龟)绘图制作龟兔赛跑动画——仅供学习哦
首先,欢迎大家来我的博客当中浏览,由于我和我的可爱现在还都个初学者,所作的东西还不够完善,之前在学习计算机的各种语言的过程中,在csdn平台上得到了许多的帮助。所以我和我的可爱先把我们做的东西放在这个平台上,期待与大家的共同交流。
这次是一个简单的python程序。利用python中自带的库,以及pygame库实现龟兔赛跑的动画。
强调,一定要安装pygame库哦!
好,话不多说,我们直接上代码!
from turtle import *#从turtle库中引入所有的命令
import turtle as t#引入turtle库把它叫做t
import pygame as p#引入turtle库把它叫做p
p.init()#初始化p的所有模块
#设置标题
t.title("欢迎来到海龟运动会之神奇海龟对决兔子")
#设置背景色
t.bgcolor("pink")
#小红旗
t.penup()
t.speed(1)
t.goto(200,0)
t.pendown()
t.color("red")
t.begin_fill()
t.left(90)
t.forward(60)
t.right(90)
t.forward(40)
t.right(150)
t.forward(50)
t.end_fill()
t.penup()
#兔子
rabbit=Turtle()#定义兔子
rabbit.hideturtle()#让兔子隐形
rabbit.shape('turtle')#兔子的形状是一只海龟(滑稽脸)
rabbit.color("green")
rabbit.up()#将兔子移动到起点,准备比赛
rabbit.back(300)#把兔子往后移300
rabbit.showturtle()#让兔子显露出来
rabbit.down()#兔子移动时划线
def rabbitmove():#定义一个新的函数 兔子移动
if usedtime<50:#如果用时小于50
rabbit.forward(3)#兔子向前奔跑
rabbit.color("green")#兔子的颜色是绿色
elif usedtime<415:#如果用时 50<=usedtime<415 兔子就去睡觉,位移不变
rabbit.forward(0)#兔子向前0
else:#否则就追赶
rabbit.forward(6)#兔子向前4
#乌龟
tortoise=Turtle()#引入乌龟图案
tortoise.hideturtle()#让乌龟隐形
tortoise.shape('turtle')#确定乌龟的形状
tortoise.color("purple")#确定乌龟的颜色
tortoise.pensize(3)#确定笔画的粗细
tortoise.up()#将乌龟移动到起点,准备比赛
tortoise.back(300)#将乌龟后移300
tortoise.showturtle()#把乌龟显露出来
tortoise.down()#乌龟移动时划线
def tortoisemove():#定义一个新的函数 乌龟移动
tortoise.forward(1)#乌龟一直在缓慢的爬行
if usedtime%2==0:
tortoise.color("purple")
else:
tortoise.color("red")
#背景音
def musics():
file=r'C:\Users\郭钊\Desktop\work space\1.mp3'
p.mixer.init()#初始化混音器
p.mixer.music.load(file)#加载文件
p.mixer.music.play()#播放音乐
usedtime=0#定义用时 赋初值为0
def move():#定义函数 移动
global usedtime#全局形式 移动均参照usedtime
rabbitposition = rabbit.xcor()#兔子的位置是兔子的x坐标
tortoiseposition = tortoise.xcor()#乌龟的位置是乌龟的x坐标
if max(rabbitposition,tortoiseposition)>200:#如果兔子和乌龟的位置中最大的超过200
writer= Turtle()#writer定义为Turtle
writer.hideturtle()#隐藏乌龟(兔子)
if tortoiseposition >200:#如果乌龟的位置大于200
msg='Tortoise win!'#给msg(message)赋值字符串 rabbit win!
else:#否则就给msg赋字符串 tortoise win!
msg ='Rabbit win!'
writer.write(msg, align='center', font=('simfang', 30,'bold'))#模块写入设置
#输入字样 对齐方式 字体为仿宋,30号,黑体的
p.mixer.music.fadeout(700)#控制音乐淡出
else:#否则就移动
rabbitmove()#兔子移动
tortoisemove()#乌龟移动
ontimer(move,100)#定时让它们有动画效果
usedtime= usedtime+1#循环,用时+1
musics()
ontimer(move,100)#比赛开始,定时
ok! 代码书写完成,第一次用这种的,有些不太习惯,可能会因此使得代码里面有多或者少空格的地方,导致程序无法正常运行(因为python是一个强格式的语言)。小伙伴们一定要记得检查呀。接下我们讲解实现过程。
这个程序是我和我的可爱在经过一周的python小学期后的答辩程序。在确定主题时,我的可爱说要用龟兔赛跑,我当然无条件的支持。
所谓龟兔赛跑,当然得有“兔”和“龟”,龟好实现,但是兔子不好实现,只能也由龟来替代。正如代码块
rabbit=Turtle()#定义兔子
rabbit.hideturtle()#让兔子隐形
rabbit.shape('turtle')#兔子的形状是一只海龟(滑稽脸)
rabbit.color("green")
rabbit.up()#将兔子移动到起点,准备比赛
rabbit.back(300)#把兔子往后移300
rabbit.showturtle()#让兔子显露出来
rabbit.down()#兔子移动时划线
#乌龟
tortoise=Turtle()#引入乌龟图案
tortoise.hideturtle()#让乌龟隐形
tortoise.shape('turtle')#确定乌龟的形状
tortoise.color("purple")#确定乌龟的颜色
tortoise.pensize(3)#确定笔画的粗细
tortoise.up()#将乌龟移动到起点,准备比赛
tortoise.back(300)#将乌龟后移300
tortoise.showturtle()#把乌龟显露出来
tortoise.down()#乌龟移动时划线
当你只引入一次时,不管怎么动,永远都只有一个小乌龟在动,那就不能叫做龟兔赛跑了。实现方法就像上面那样,以下为简易版本
from turtle import *
turtle=Turtle()
turtle.shape('turtle')
turtle.forward(200)
rabbit=Turtle()
rabbit.shape('turtle')
这样就会出现两只小乌龟了。推类,三只,四只,十只是不是也很简单呐。
作为比赛,总得有个起点与终点吧?
#小红旗
t.penup()
t.speed(1)
t.goto(200,0)
t.pendown()
t.color("red")
t.begin_fill()
t.left(90)
t.forward(60)
t.right(90)
t.forward(40)
t.right(150)
t.forward(50)
t.end_fill()
t.penup()
这段代码是我认为在整个代码中比较出彩的。因为它的位置在整个代码的最开头,所以它最先执行,在视觉效果上如同先由“裁判”确定一个终点似的。
之后便是定义函数了,python的优势就是它便于理解,这里面我定义的函数都比较简单,所用到的结构仅仅是简单的判断与循环。通过usedtime来控制整个动画中移动的物体。不断地加一不断地移动,不断的变化。利用ontimer定时器,在特定的时间后,调用move函数,使得整个动画具有很哈动画效果。尤其注意背景音乐用了pygame库,这个库并非python自带的,所以大家如果想要正常运行程序,需要安装pygame的库哦。网上的安装教程也有很多哦。其中musics函数还需要小伙伴们的电脑中有一个mp3类型的音乐文件支撑,file 后的文件位置换成你想要播放的mp3文件的位置即可。
好啦,其实代码上的注释已经很多,相信大家都会明白的。如果有疑问可以加我的QQ:1056966958 我们一起交流沟通呀!记得加上备注,不然我会以为你是卖片的(滑稽)
好啦,就到这里啦,谢谢大家哦!
python海龟绘图颜色_python中利用turtle(海龟)绘图制作龟兔赛跑动画——仅供学习...相关推荐
- python中利用turtle(海龟)绘图制作龟兔赛跑动画——仅供学习
python中利用turtle(海龟)绘图制作龟兔赛跑动画--仅供学习哦 首先,欢迎大家来我的博客当中浏览,由于我和我的可爱现在还都个初学者,所作的东西还不够完善,之前在学习计算机的各种语言的过程中, ...
- python海龟绘图颜色_Python中的高级turtle(海龟)作图(续)
四.填色 color 函数有三个参数.第一个参数指定有多少红色,第二个指定有多少绿色,第三个指定有多少蓝色.比如,要得到车子的亮红色,我们用 color(1,0,0),也就是让海龟用百分之百的红色画笔 ...
- python库怎么绘画_python中的turtle库(图形绘画库)
turtle绘图的基础知识: 1. 画布(canvas) 画布就是turtle为我们展开用于绘图区域,我们可以设置它的大小和初始位置. 设置画布大小 turtle.screensize(canvwid ...
- python短期预测图_Python中利用长短期记忆模型LSTM进行时间序列预测分析
原文链接:http://tecdat.cn/?p=6663 此示例中,神经网络用于使用2011年4月至2013年2月期间的数据预测都柏林市议会公民办公室的能源消耗. 每日数据是通过总计每天提供的15分 ...
- python redis 消息队列_python中利用redis构建任务队列(queue)
Python中的使用标准queue模块就可以建立多进程使用的队列,但是使用redis和redis-queue(rq)模块使这一操作更加简单. Part 1. 比如首先我们使用队列来简单的储存数据:我们 ...
- python改变背景颜色_python中绘图时怎么改背景颜色?
python中一般使用matplotlib库进行绘图,下面我们就来看一下python中绘图时修改背景颜色的方法: 子图可以对plt.subplot的参数做修改,下面是对子图的背景颜色修改代码:impo ...
- python怎样填充颜色_python中如何给图形填充颜色
使用Turtle不只可以画线条,也可以将画出的封闭线条进行填充. -设定填充色:fillecolor(r, g, b) -开始填充:begin_fill() -结束填充:end_fill() 画一组随 ...
- python有什么颜色_Python中常见颜色记录
python中常见绘图的颜色选择 常见颜色 可选的颜色库 颜色名称对应的颜色码 names = { 'aliceblue': '#F0F8FF', 'antiquewhite': '#FAEBD7', ...
- python饼图添加颜色_Python中的五颜六色的饼状图!(二)
[5x00]突出显示扇形块 explode 参数可以实现突出显示某一块扇区,接收数组形式的参数,这个数组中的元素个数应该是 len(x),即和扇区块的数量相同.import matplotlib.py ...
最新文章
- Spring Task定时任务的配置和使用详解
- HighNewTech:2019.08.08华为发布—面向2025十大趋势
- mysql查询有数据但返回null_Mybatis查不到数据查询返回Null问题
- Linux操作系统多线程信号总结(转)
- mysql怎么拆字符串_MySQL截取和拆分字符串函数用法示例
- 户外lisp导向牌如何安装_深圳医院导向标识牌制作按功能可分为哪些?
- python程序设计和c语言_C 语言和 Python,该从哪个入门编程?
- shell循环和函数引用
- 计算机系统结构02325知识点,02325计算机系统结构复习资料.doc
- 使用Scikit Learn的分类器探索Iris数据集
- vsftpd安装与配置
- 项目启动时,出现了Consider defining a bean of type ‘xxx’ in your configuration 问题。
- 怎样维修无图纸电路板?
- 威漫哨兵机器人_漫威:哨兵机器人天下无敌?这几位变种人就不把他们放在眼里...
- 11.智能快递柜(用户寄件)
- suse12中pip install xxx报错gcc: error: unrecognized command line option ‘-fstack-clash-protection’
- Android开发之关机广播
- 天瑞达安科技集团:Java工程师能从事什么工作,不单是程序员!!
- 原来地图导航结合WebAR技术还能这么玩
- 建国以来的全套人民币图片