python海龟怎么填色,python海龟绘图背景颜色
自从有了这些教训,——画出来的图形变得越来越复杂,你可能还会怀疑是不是不够漂亮。乌龟只能画黑线吗?
当然不是!今天让我们来点颜色看看。
其实在乌龟身上画不同的颜色并不难。只需调用海龟的“pencolor()”方法。所谓“方法”,可以理解为一段时间内“力所能及”。使用符号“.”跟在乌龟后面调用,并创建单词“t.pencolor()”,这样乌龟就可以画出自己喜欢的颜色。(下)。
如果您对“红色”感兴趣,请按F5获得以下结果:
嗯,真的不是单调的黑线。如你所愿,现在是一条单调的红线。
什么,这不就是你想要的吗?要不要“五颜六色”?
那么,在今天项目的试验部分,谁向你保证了?如果你想做,现在就开始学习华丽的颜色。
既然是“多彩的”,就必须在程序运行过程中多次使用“t.pencolor()”语句,每次使用后都设置成不同的颜色。
看看这段“单调的红线”代码:
这段代码分为两部分。
第一部分(1)主要设置一些预参数。行话叫做“初始化”。以现在的电脑速度,这部分不到1毫秒就“一笔写完”了。
第二部分(2)实际上是绘图部分。我们用“数数圈”让乌龟在这个圈里“转圈”上百次,画出漂亮的图形。
如果多次使用 t.pencolor()语句,并且每次都要设置不同的颜色,那么要把这些语句放在哪里呢?是“初始化部分”吗?还是“圆形部分”?
经过前面的分析,相信你会做出明智的选择。在画乌龟的过程中,需要“不断地”改变画笔的颜色,所以如果放在“初始化部分”,就会“瞬间”执行。如何在整个绘画过程中“持续”发挥作用?所以把“设置画笔颜色”的块放在循环部分才是正确的“姿势”。
我们知道,“t.pencolor()”语句每次都可以将一种颜色设置为我们喜欢的颜色。现在我们需要六种颜色。这样的句子需要六行。然后,——中只有四个“循环部分”。怎么才能把这六行“t.pencolor()”给“塞”进去?
下面具体分析一下现状。3354乌龟每个周期只画“一边”来改变方向,但是这个图形每个周期都是变色的,然后变色再画下一边。那么,需要每循环换一次色还是换六次色呢?当然是每个周期一次颜色转换。只需换一次颜色,只需说“t.pencolor()”。这样,就不用担心在循环中阻塞“t.pencolor()”。
最后一个问题——《一句话》中“六”种颜色如何转换t.pencolor()?这是我们今天核心技术——的清单。请给我你的帮助。
“变量”如“边”和“长度”已在最后一个项目中使用。都是变数。一个变量可以包含一个“值”或一个“数据”。
与变量不同,“列表”可以包含“多个值”,因此程序可以有效地处理“一系列”数据。就像我们平时使用的“排序框”一样,每个排序框就像一个“变量”。把几个排序框堆起来,给它们“编号”,就成了一个“列表”。为什么强调“拨号码”?因为无论我们是把数据“放”进列表,还是从列表中“取出”数据,都是根据这个“数”来做的。先说这个,看看怎么用。
在Python上创建“列表”很容易。因为我们需要做一个“颜色”的列表,这里我们把这个列表命名为“颜色”。(多种,因为“一系列”颜色被添加到列表中)。使用以下语句创建颜色列表:列表由方括号“[]”表示。
看不清颜色?此时,的列表是“空的”,因为我们使用的数据是“不可用的”。将数据放入列表的方法有很多,包括“在定义列表时放入初始数据”和“在程序运行时将数据添加到列表中”。今天选择第一种方法,——。定义列表时,将数据直接放入列表中。为此,请将先前定义颜色列表的语句修改如下,并将预定义的“颜色名称”放入列表中:
列表创建后,“导入”列表中的数据(称为“元素”)也用方括号“[]”括起来,“整数”填入“[]”。这意味着“哪个”数据被读取。暗语叫“索引”或“下标”,外文叫“索引”。对于上面的列表,每个元素如下所示:
“红色”对应的索引值是“0”而不是“1”。也就是说,所有列表中的第一个元素是对应于[0]的元素。请不要忘记。
我准备好了。让我们看看如何在我们的代码中使用存储在“list”中的数据。根据前面的分析,乌龟在每个循环中只画“一面”来做一个回合,但是回合结束后,必须改变这个图形的颜色才能画下一面,用“penny”t . pen color()回收6种颜色。当然,我希望乌龟在画第一面的时候用列表中的第一种颜色,也就是colors[0],画第二面的时候用列表中的第二种颜色。
颜色”(colors[1]),……等等。当绘制第7条边时,再次使用颜色[0],当绘制第8条边时,使用颜色[1] …
如何做到这一点?我们希望能有一个变量,在绘制的过程中可以“从0到5一一递增”,然后回到“0”,再“一一递增到5”。你如何得到这样的变量?这里有一个编程界常用的方法(用一个流行的词叫“套路”),就是“求余数”。如果你对小学数学有印象的话,你应该熟悉下面的计算:
0 6=0 …… 0
1 6=0 …… 1
2 6=0 …… 2
3 6=0 …… 3
4 6=0 …… 4
5 6=0 …… 5
6 6=1 …… 0
7 6=1 …… 1
8 6=1 …… 2
……
再看上面公式中省略号后的余数,我们发现这些余数形成了一个“0到5”的循环,正好对应颜色列表中“0到5”的五个索引!现在,你对“为什么榜单的索引从0开始”有一点点“感觉”了吗?如果我们“从1开始”,每一个余数都要“加1”,那就远没有这么方便了!
既然已经确定“余数”完全满足我们的要求,那么谁来除以6得到我们想要的余数呢?看这个循环。从0开始一直递增的“变量”是什么?是啊!是循环的计数器“I”。
被除数和除数都有。还记得应该用什么运算符来求余数吗?没错,就是“%”。寻找余数的问题在上一课“用Python计数”中已经讨论过了(点击此处复习)。时间有点长,可以复习一下前面的课。
因此,我们的“核心陈述”应该按以下步骤编写:
(1)计算余数—— I % 6;“一号柜台”除以“六”;
(2)使用这个计算的余数作为“索引”来获得列表颜色中的数据——colors [I% 6];
(3)使用从列表颜色获得的数据,将海龟画笔的颜色更改——t.pencolor(颜色[i% 6])。
将这个“核心语句”放入循环中,得到如下的最终代码:
努力了很久,终于要看到成果了。按“F5”运行它!
你也可能会觉得有些颜色在白色背景下看起来不够漂亮。可以在列表中设置自己喜欢的颜色值,也可以使用上图红框中的“turtle.bgcolor("black ")”语句将画布的背景色设置为黑色,如下图视频所示。你得到了同样的结果吗?
项目摘要:
在今天的项目中,我们:
学会了小乌龟“设置画笔颜色”的方法—— T. PenColor(“红色”);
学会了如何“创建列表”以及如何“设置和读取列表中的数据”;
学会了用“余数运算符(%)”通过循环得到一个数列;
学会了如何结合以上三项新技能,让小乌龟画出彩色图形;
学会了“设置画布背景色”的方法—— turtle.bgcolor(“黑色”)。
今天的课程内容很多,“列表”的创建和使用是一个难点,要认真理解。
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。