儿童学python趣味100课-第90课

本次课程回顾了随机颜色、位置及笔刷大小的控制,并引入了新的编程概念:通过循环实现螺旋图案,同时讲解了如何让笔刷宽度在一定范围内循环变化,使图案更加生动。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

复习昨天的内容

上节课布置的作业大家完成了吗,制作一个随机出现的满天气球泡泡。大家实现起来看一看。
满天泡泡
总结以下我们昨天学到的东西
我们学会了随机的颜色:
随机位置
随机笔刷大小
可以说我们的随机是完全有程序控制的随机数
那么我们就学习了两大类
由我们程序控制的精确图案 和由程序控制的随机图案

新的知识

今天要学习的新的内容就是,既有随机又有控制的情况。
在可控的范围内循环,实现极有规律又不断变化。
在这里插入图片描述
第一个知识点:
区别于以前的画法,以前的画法都是将固定大小的图像在360内旋转多次形成的图形。
今天要学习的是递增变成的图像旋转形成的螺旋图像
借助之前学习的循环魔法
for i in range(1,601):
这其中的i就是从1~到600的取值,包括下限不包括上线
我们发现i就是从小到达变化的,这样就能解决所画图形的边长逐渐变化。
第二个重点也是难点:
如何实现笔刷的宽度在一个范围内的循环变化
当然方法有好多,在这里我们学习,一种好理解的取余数法
同学们都知道,for i in range(1,601): 中的i是逐渐变大的
他是一个整数。在这里是正整数。如果我们想要笔刷的宽度从1~4内循环变化,就可以应用 i %4 这个的意思是拿到i 除以4的余数。i从1逐渐变大,%4的余数的规律是。000111122223333000011112222333300001111222233330000
总结规律:
连续正整数% n,就会得到 n组数字循环,n由(0,1,2,3~n-1)组成
我们笔刷宽度设置中是从1~9的,如果我们把i%4 的值+1就会使最后的值在1~4内变化,值就是我们想要的笔刷宽度规律变化。
动手吧:同学们按我的要求来实现程序命令:
1、导入海龟画图模块
2、导入随机模块
3、导入时间模块
4、设置画布名称为螺旋变色
5、背景颜色为深空蓝DeepSkyBlue
6、速度为最快
7、进行600次循环
8、每次循环设置随机颜色(想不起来怎么写了吧,很正常,出门左转查查我们自己的笔记,我也总会忘了)
9、设置我们刚学的。随机笔刷大小pensize(i%4+1)就是在笔刷在1~4内重复循环。如果想要在7到9之中循环就写成pensize(i%3+7)就可以了。大家可以总结以下规律。
10、然后就是前进i的距离
11、然后就是旋转角度,左转右转都一样。我们先随意设定角度。在设定一个60 或90看区别。总结以下形成螺旋的要素。角度的条件是啥才能形成螺旋。
12、时间暂停10秒,便于观察
下面展示一些 内联代码片

// 螺旋变色变宽度图形
from turtle import *
import time
from random import randint, random
#tracer(0,0)
bgcolor('white')
speed(0)
for i in range(1,601):   
    pencolor(random(),random(),random())
    pensize(i%4+1)
    forward(i)
    right(61)
time.sleep(10)

left60的情况
以上是60度的情况
left30度的情况
以上是left30度的情况
在这里插入图片描述
120度的情况
我们会发现一个问题,只要是旋转正多变的角度他就螺旋不起来,只要不是正多边形的内角和,就是笔刷没有走会到出发点就可以循环。我们是一下较为为91度情况,笔刷走不回到原点。这样就能实现螺旋变色了
在这里插入图片描述
这就完成了我们学习的内容。
规律的变色变宽度,变长度产生的图像就会非常漂亮

今天学习的东西不太好理解

要求各位同学,将写到程序上都添加好注释,记住每一步是道理。这就是我们的作业。可以改变一下角度,看看图形有什么变化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值