python使用for循环和海龟绘图实现漂亮螺旋线
作者:布口袋_天晴了 发布时间:2023-08-01 10:38:57
用for循环和海龟绘图实现漂亮的螺旋线
A.课程内容
本节课通过绘制复杂的螺旋线来深入学习for循环和range()函数的用法。深入了解循环的程序过程。
B.知识点
(1)for循环的用法
(2)range()函数的用法
(3)绘制螺旋线
C.用到的基本指令
(1)import
(2)turtle.Pen()
(3)forward()
(4)right()
(5)for循环
(6)range()
前面已经讲过如何绘制正五边形,本节将结合for循环绘制一个五边形螺旋线。螺旋线的特点是有很多个边,每个边的长度都不一样,是逐渐增加的。比如第1边长为1,第2边长为2,第3边长为3,依次增加。如果用for循环,则每循环一次向前走的距离增加1,如图所示:
range(100)将让for循环中冒号后面的代码循环100次。
输出五边形螺旋线
上面的程序是如何执行的呢?
(1)首先导入海龟绘图模块,并将变量t设置为海龟的笔画。
(2)python第一次执行循环时,for循环先访问range列表中的第一个元素0(range(100)会生成从0到99的连续的数),并将0存储在变量x中,变量x的值变为0。
(3)执行t.forward(x)语句让海龟画笔向前移动x步。由于x=0,所以画笔向前移动0步。
(4)执行t.right(72)语句,让海龟画笔向右转动72°。
(5)执行第二次循环,for循环访问range列表中的第二个元素1,并将1存储在变量x中,变量x的值变为1.接着画笔向前移动1步,画笔向右转动72°。
(6)执行第三次循环,for循环访问range列表中的第三个元素2,并将2存储在变量x中,变量x的值变为2,接着画笔向前移动2步,画笔向右转动72°。
(7)这样一次一次地继续执行,当for循环遍历range中最后一个元素99时,变量x的值就为99,画笔向前移动99步,并向右转动72°。这样就画出一个漂亮的螺旋线。
绘制旋转角度修改
上面的程序中,如果我们将每次绘制旋转的角度改变一下会绘制出什么图形呢?
(1)将旋转角度angle修改为76°时:
(2)将旋转角度angle修改为91°时:
来源:https://www.jianshu.com/p/97f54c0b7e6e
猜你喜欢
- 如何用OdbcRegTool组件来创建一个数据源?OdbcRegTool是一个免费组件,在服务器上安装后,就可以来创建一个数据源:<h
- 首先说明,Supervisor 只能安装在 Python 2.x 环境中!但是基本上所有的 Linux 都同时预装了 Python 2.x
- 如下所示:#先下载psutil库:pip install psutilimport psutilimport os,datetime,tim
- Python学习第一篇。把之前学习的Python基础知识总结一下。一、认识Python首先我们得清楚这个:Python这个名字是从Monty
- Json To Dictimport jsonjsonData = '{"a":1,"b":
- 在前面的DRF系列教程中,我们以博客为例介绍了序列化器, 使用基于类的视图APIView和ModelViewSet开发了针对文章资源进行增删
- 1.二进制读取模式rt 读取文本文件(默认值)rb 读取二进制文件file_name = "C:/Users/cheng/Desk
- mysqli对prepare的支持对于大访问量的网站是很有好处的,它极大地降低了系统开销,而且保证了创建查询的稳定性和安全性。prepare
- 1. php 中的序列化在 PHP 中,序列化是将数据结构或对象转换为可以存储或传输的字符串表示的过程,经过序列化之后的对象或者数据结构,就
- 1.--区分大小写select * from a where a=’AbCdE’ collate C
- 一、为图片添加水印 代码如下:<% Dim Jpeg ””//声明变量 Set Jpeg = Server.CreateObject(
- 1.如何通过地址栏参数来得到模块名称和控制器名称(即使在有路由和开了重写模块的情况下)2.tp是如何实现前置,后置方 * 能模块,和如何执行带
- 因为Python是自带文档,可以通过help函数来查询每一个系统函数的用法解释说明。一般来说,关键的使用方法和注意点在这个系统的文档中都说的
- 实际工作经历中,免不了有时候需要连接数据库进行问题排查分析的场景,之前一直习惯通过 mysql -uxxx -hxxxx -P1234 ..
- 本文主要介绍了Python利用numpy实现三层神经网络的示例代码,分享给大家,具体如下:其实神经网络很好实现,稍微有点基础的基本都可以实现
- 本文介绍的MySQL数据库的出错代码表,依据MySQL数据库头文件mysql/include/mysqld_error.h整理而成。详细内容
- 在默认情况下,Access 2000/2002数据库是以“共享”的方式打开的,这样可以保证多人能够同时使用同一个数据库。不过,在共享方式打开
- 使用Django意味着后台框架的几乎所有内容都会和Django产生互动,排除功能全部手撸的情况.Django 后台admin有大量的属性和方
- JavaScript/Dom中有很多很零碎的东西,让人总是感觉理解的有些“朦胧”,因此,有时候还是应该总结一下,对于Event对象,前两天看
- 如何在ADO中使用存储查询?对于使用参数存贮查询,我们可用下面的代码进行示例:Private cn As Ne