「Python海龟画图」利用海龟画笔绘制花瓣轮廓 |
您所在的位置:网站首页 › 香袋可以放在身上吗 › 「Python海龟画图」利用海龟画笔绘制花瓣轮廓 |
0
分享至
用微信扫码二维码 分享至好友和朋友圈 学习笔记系列利用海龟笔绘制两段1/4弧形使用海龟模块,利用循环嵌套绘制花瓣轮廓 实例说明 利用海龟笔绘制两段1/4弧形,如下图形 实例代码 import turtle t = turtle.Pen() t.pencolor("red") t.speed(0) for x in range(90): t.forward(1) t.right(1) t.right(90) for x in range(90): t.forward(1) t.right(1) turtle.done() 功能要求 使用海龟模块,利用循环嵌套绘制花瓣轮廓。 说明:花瓣可以简单的看成由两个圆弧组成,绘制花瓣时,可以通过绘制两个对称的圆弧来实现。圆弧实际上由很多小的线段组成,绘制线段是不断地旋转画笔即可。 实例代码 import turtle t = turtle.Pen() for x in range(90): t.forward(1) t.right(1) turtle.done() 运行结果 实现分析 for x in range(90)::用for循环绘制圆弧。每次循环时都会绘制一个1步的线段,并让画笔向右旋转1°。 t.forward(1):向前移动1步。 t.right(1):向右转动1°。 实例代码 接下去画笔旋转90°,绘制同样的圆弧。 import turtle t = turtle.Pen() for x in range(90): t.forward(1) t.right(1) t.right(90) for x in range(90): t.forward(1) t.right(1) turtle.done() 运行结果 代码分析 利用两个for循环绘制出两个圆弧,组成一个花瓣形状。画圆弧的循环代码执行了两次,可以通过嵌套循环来简化程序。 for x in range(90): t.forward(1) t.right(1):之前画圆弧的代码。 t.right(90):让画笔旋转90°。 for x in range(90): t.forward(1) t.right(1):画相同的一个圆弧。 实例代码 使用嵌套循环,绘制两个同样的圆弧,实现绘制花瓣。 import turtle t = turtle.Pen() for y in range(2): for x in range(90): t.forward(1) t.right(1) t.right(90) turtle.done() 运行结果 代码分析 for循环嵌套是在第一个for循环里面包含另一个for循环。 for y in range(2): for x in range(90): t.forward(1) t.right(1) t.right(90):两个for循环嵌套。第一个for循环下面包含另一个for循环。 for x in range(90): t.forward(1) t.right(1):画圆弧的for循环。 程序执行过程: 1)首先导入海龟绘图模块,将变量t设置为海龟的画笔。 2)执行“for y in range(2)”语句,开始执行for循环,此for循环执行2次后结束循环。第一次循环时,for循环先访问range列表中第一个元素0,并将0存储在变量y中,变量y的值变为0。 3)执行for循环内部的语句(缩进部分)。先执行“for x in range(90)”语句,此for循环执行90次后结束。第1次循环时,访问range列表中的第一个元素0,并将0存储在变量x中,变量x的值变为0。然后执行第二个for循环内的语句(下一个缩进部分),先执行“t.forward(1)”语句画笔向前移动1步,在执行“t.right(1)”语句,画笔向右转动1°。然后进行第二个for循环(内循环),变量x的值变为1,画笔向前移动1步,向右转动1°。这样一直循环,指导第90次循环,变量x的值变为89,画笔向前移动1步,向右移动1°,结束第二个for循环,画出一段弧线。 4)执行“t.right(90)”语句,画笔向右转90°,完成“for y in range(2)”语句的第一次循环。 5)再执行“for y in range(2)”执行第二次循环,访问range列表中第二个元素“1”,并将“1”存储在变量y中,变量y的值变为了“1”。 6)执行“for x in range(90)”语句,重复步骤3),画出第二段弧线。 7)执行“t.right(90)”语句,画笔向右转90°,完成循环,结束程序。 特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。 Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services. /阅读下一篇/ 返回网易首页 下载网易新闻客户端 |
今日新闻 |
推荐新闻 |
CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3 |