粉丝278获赞2165

各位同学大家好,我们继续和小乌龟一起学习 python, 今天我们将和大家一起认识如何在海龟绘图库中获取随机颜色。 首先我们先来巩固一下在绘图库中的颜色指令,我们先导入绘图库 import turtle, 写个小名儿叫做 t, 我们使用 t 点 d, n, e, 让窗口保留下来,我们点运行。首先我们改变颜色的指令,我们使用 t 点 color, 和它相关的两个指令是, t 点 pen color, 只改变画笔的颜色和 t 点 feel color, 只改变填充颜色。 我们直接使用 tea 点 color 来改变我们的整个颜色,比如说我们使用了 red 红色,然后我们再使用 tea 点 dot 两百,那这是 我们会画出一个直径为两百的红色的圆形。当然我们也可以在 dot 后面直接加入颜色,比如说指甲 blue, 这时候我们其实画出的是一个蓝色的圆形,也就是我们在 dot 指纹里面如果不给出颜色,那么我们画出的就是画笔对应的颜色, 如果给出颜色,那么他其实和画笔的颜色没有关系,这是一个小知识,我把它去掉先,那这时候我们画出了一个红色的圆形 dot, 那现在我们在想说如何画出随机颜色呢? 如果说我们想学完画出随机颜色,我们需要认识一下计算机中的颜色是怎么来的。首先我们都听过三原色,我们经常说红黄蓝三原色,其实 这个三原色呢有嗯两大种。第一种呢,我们叫做燃料的三原色,也就是说我们使用燃料进行,比如说三种颜色,嗯,在互相去掺在一起的时候,我们就会得到很多很多种颜色, 比如说把三种颜色全部掺在一起,我们就会得到黑色,按照同样的比例,然后我们把红色,比如说和黄色放在一起,那么我们就会得到橙色等等。 那计算机中的三原色,我们首先看这里,我们叫 r g b red green blue, 红绿蓝,注意和红黄蓝是区别的。 在我们的光学三原色中,我们可以这样理解,我们把等量的红色、绿色、蓝色如果照射在一起的话呢,我们就变成白 白色,白光。如果没有任何一种颜色,也就是三种颜色的值都为零的时候,那么外面你看就是黑色, 所以说红黄蓝我们经常称为燃料三原色。红绿蓝呢?我们叫光学的三原色。这里面我们不需要太多去纠结这个问题,我们先来看一下在我们的绘图库中如何去实现 用不同的数值的红色、绿色、蓝色来去构成我们随机的颜色。 好,首先我们先做一个事情,我们使用 t 点 color mode m o d 二五五,我们先把颜色模式调整到二五五,这里面我们不需要做太多解释, 我们可以这样想,每一种颜色的值呢都是从零取到二五五, 那这时候我们在使用 tear color 的时候,注意我们在里面就可以去用三种颜色的数值来去代表一种颜色。 第一个我们第一个数值是红色,比如说红色我们用了个一百,第二数值呢两百是绿色。第三个数值呢,比如说五十是蓝色,我们使用 tedder color, 一百两百五十,我们看一看我们会得到什么颜色 点运行,我们会发现得到一个好像是绿色,嗯,那我们改一改,把红色改成两百,这时候我们点运行, 哦,好像还是有点黄。绿色,那我们把这个改成两百, 哦,发现我们得到了灰色,那这个呢?我们再去调整一下,二十哎,二十,哎,然后二十看看,这时候我们会得到了,哇,黑色,也就说我们这三种颜色都比较小,都快到零了,那这时候我们就会有一个深的黑色。 如果说我们去改变其他的数值的时候,你会发现我们的颜色呢就会随之变化,我们会得到非常非常多的颜色。 那现在我们知道了如何去获取一个任意的颜色,我们用三个数值,第一个呢,我们表示红色的数值,也就是 red 的数值。第二个我们表示绿色的数值 green, 绿色的数值。 第三个呢,我们可以理解为是蓝色的树脂 blue, 那这时候我们就会得到颜色,那怎么得到一个随机颜色呢?我们这时候需要另外一个 cool, 嗯, import random r, a, n, d, o, m random 随机,这是我们一个非常重要的库,在前期我们学习 python 的时候, 我觉得我们只需要重点掌握两个库就可以了。第一个就是用来学习的海龟绘图库 turtle, 第二个呢是随机获取随机数的 random r, a, n, d, o, m。 它本身的英语意思就是随机,我们也给它起个小名叫做 t。 好了, random 里面有很多关于人,呃,关于随机的指令,我们其实今天只需要认识一个就可以了,来,我们来学习这个 指令,我们是用哎,这里面不能再给它 t 了,我们叫 r 好了, r 点 rent int r 点 rent int rent random 的缩写, int 整数,随机整数,比如说我们随机一个零到二五五的整数, 我们直接 print are 点 rent in 零到二五五,点击运行,我们就会得到幺零三幺幺零九八。我们可以观察一下,每次我们都会得到一个随机值, 对,是零到二五五的随机值,它是包含了零,同时也包含了二五五。好,那这时候我们就知道了如何获取一个随机值,那我们是不是就想到了如何得到随机颜色了?我们把这三个值都变成 零到二五五的随机数,比如说我们这里写 are 点 rent int 零到二五五,然后把后面两个也用同样的指,零到二五五,零到二五五, 那现在我们点击运行,我们把这个先关掉来,我们直接看这边,这时候我们就得到,哇,这是一个紫红色, 哇,天蓝色,哇,这是什么颜色?嗯,蓝色,你会发现每次的时候我都会获取一个随机的颜色,这颜色真的是非常多,同学们可以自己算一下一共有多少种颜色,就是二百五十六去乘二百五十六去乘二百五十六,我们 直接 print 一下,看看有多少种颜色哈。二百五十六乘二百五十六,再乘二百五十六, 我们点运行,那这时候我们就得到了,哇个十百千万,十万,百万,千万,一千六百七十七万七千两百一十六种颜色,所以说这个颜色其实是非常非常多的。 那现在我们来完成一个小小的任务,我们希望在我们的画布上画出 不同颜色的圆形,而且是在随机的位置上。好,那我们知道了随机数,我们获取随机位置。首先我们先设定一下画布的大小,我们使用 t 点 screen size, 我们把画布大小设为四百四百。好了, 那这时候呢,我们就让我们的小乌龟去到 x 是负两百到 两百的随机数外是负两百到两百的随机数,这样的一个随机位置去画出一个随机的颜色的圆形就可以了。 我们一共画多少个?我们可以画画二十个吧。 for in range 宠物执行二十次,画二十个。首先我们使用 t 点 go to, 去到哪里呢?我们先去把画笔抬起来提点喷 up。 这里要注意,我们使用 dot 指令的时候是不需要落笔的。哎,所以说我们的抬笔状态就可以去完成 t 点沟通到哪里? x 是 are 点 red int 从负的两百到两百,因为我们从左到右是负两百到两百,那 y 呢? why 是 are 点 red int 也是负两百到两百,这个可以代表是我去到了一个随机的位置,然后我们获取一个随机的颜色, 然后我们再使用 t 点 dot, 我们拍一个小一点的 dot 五十。好了,来,我们现在点运行测试一下, 好像画的有点慢,是不是啊?我们加入一个 tida speed 零,来,我们重新来一次 wow, 挺好看的是不是?那这时候我们让他画多一点好了啊,画一百个 wow it 非常漂亮对吧?嗯,这样的话我们就可以轻松的得到随机颜色,并且呢,我们使用了随机得到了随机位置,同学们自己来自己完成一下好不好?再见。

同学们好,欢迎来到阿联老师的 python 课堂,这小节课呢,我们来学习 total cool 的画笔颜色设置。首先呢我们先看第一个 pink color, 那这个是设置画笔的颜色的,那具体设置什么颜色呢?我们由参数 color 来代表, 在这里有一个特别说明,哎,参数 color 有两种表示方式,第一种呢是字符串的形式,内容为颜色的英文,那字符串呢,我们就要记住,一定要用引号引起来, 字母呢要用小写的,比如说绿色,我们就可以用引号 green, 这是第一种表示颜色的方法。第二种表示颜色的方式是 rgb 校园组织形成的。 rgb 呢是指红绿蓝三个通道颜色的组合,是目前计算机常用的色彩体系啊,他基本上能够覆盖视力所能感知的所有颜色。 使用 lgb 色彩体系来表示颜色呢,需要一个三元组,也就是三个数值,那这三个数值分别是红色,绿色、蓝色这三种颜色的强度,那这个强度值呢,可以从零到二百五十五,那比方说在这里 turtle 点盆 color, 然后后边呢是三个数值,二五五,二五五,二五五,就是红绿蓝都取得最大值的时候呢,就代表最亮,那么它就是一个白色。那 再比方说,如果说我这里的数字是零零零是三个,零是最低的时候呢,他亮度是最低的,就代表的是黑色。 这里需要注意一下,我们在使用 rgb 三元组时,需要在前面加上哎特透点 color mod, 就是我们要把这个颜色呢设定成 rgb 模式,这样呢才能使用这种方式来表示我们的颜色值。 我们来一起看一下,我们打开我们的拍森的 idle, 然后新建一个文件保存一下。 首先呢我们先导 导入我们的拖拖裤,然后用我们的喷 color 命令来设置我们画笔的颜色。我们先看第一种设置方式,通过字符串的方式,比方说我们设置画笔是 red 红色, 然后我们来绘制一个红色的圆,圆的半径呢是二百,运行, 我们看画笔画出一个半径是二百的这样的一个圆。 下边我们来看第二种方式, 第二种设置颜色值的方式呢,我们是通过 r g b 三元组,那这三个数值呢?我设置成二五五零 二五五,哎,红绿蓝,我将红色和蓝色都设置成二五五,然后绿色设置成零,我们看他的组合会是怎样的一个颜色。同样我们再画一个圆, 半径是一百,那我们先运行一下,看看能不能执行 第一个圆,红色的这个圆没有问题。哎,我们看在 布置第二原石呢,报错了,为什么呢?说我们这个颜色值是错误的,因为我们在通过 r g b 三元组数值来设置颜色的时候呢,我需要做一个声明,将我们的颜色模式加载进来, t u r t l e 点 color mode, 然后呢参数是二五五,那这一行就表示我颜色值设置可以通过 r g b 三元组来进行设置了,现在我们再执行一下 大圆没有问题,哎,我们看又画了一个什么呢?紫色的小圆,半径是一百的一个小圆, 那也就是说我这个红色和蓝色组合在一起是一个啊,紫色啊,绿色是零,是没有绿色啊, 那这里老师再说一下,设置颜色值呢,有两种方式,一个是通过字符串,一个是通过 lgb 的亮度值,那通过 lgb 三元组数值设置的时候呢,需要做一个啊声明, 另外我们在后边其他颜色设置的命令呢,他的颜色值都可以通过我们这两种方式来进行设置。 我们看这里有一个表,在这个表里边呢,我们可以看到 r、 g、 b 不同的数值对应的不同的颜色,我们可以看一下,比方说三个值都是二五五的时候呢,就是白色最亮 亮的,然后都是零的时候呢是黑色,那如果红和绿是二五五,然后呢蓝色是零的时候呢?组合在一起就是一个黄色啊,下边依次我们可以自己去设置看一下效果啊, 那我们除了设置画笔颜色以外呢,我们还可以设置填充颜色,我们来一起看一下 这个啊,设置画笔的填充颜色。什么是填充颜色呢?那我们在刚才绘制这个圆,他只有边缘,然后里边的填充的其实是没有的,对不对?然后我们可以给他设置一个啊填充色, 通过 few color 来进行设置。那我们来一起先看一下怎么设置这 设置了画笔颜色,我们在下边呢给他设置一个 few color 填充颜色,那填充一个黄色吧,黄色是 yellow, 那我们看直接这样去写,能不能填充上,我们运行一下。 哎,两个圆绘制完成了,画笔颜色都改了,但是并没有填充颜色,为什么呢? 在这里老师强调一下,如果我们要填充颜色的话,我们必须要声明一下,就是从哪里开始进行填充,那比方说我只 想给这个半径是二百的大圆做一个填充,而下边这个半径是一百的小圆,不做填充,那么我就需要在这个大圆的上面呢去给他声明一下,比给你开始 feel 填充 begin feel, 中间用下划线隔开。哎, begin feel 这个方法代表的是从这里开始我下边就可以开始填充了, 那只写这一个呢,还是不行的,我还需要有一个什么呢? in the feel 与它进行呼应, 这两个必须是配对实现的。那在 begin feel 和 in the feel 中间的这些部分呢,就会填充 上我们在上边设置的这个 video color 的这个颜色,我们来运行看一下。 绘制完了以后呢,就会填充上颜色,那我们看里边这个小圆呢?哎,并没有填充颜色, 那下边我们用同样的方法再给下边里边这个小圆呢,也给他填充一个颜色,我们给他填充一个蓝色吧, 那我们先设置一下它的颜色,要填充成蓝色 feel color 设置好了以后呢,我需要在这个绘制 这个图形前面给他声明一下,要开始填充了 begin feel, 注意写法。然后呢,填充结束了以后要有 end feel, 注意两个一定要配对使用 end feel, end 下滑线 fill, 然后小括号运行 好,咱们可以看到我们在这里有了两个不同的颜色填充。 这里老师再强调一下我们的填充颜色,只是设置 feel color 是不可以的。我们在填充之前呢,需要有一个声明, begin feel, 然后填充完了以后呢,有一个 and feel 与之进行对应。 好,这就是我们填充颜色需要在开始填充前进行声明,那才有效。如果没有声明的话呢,设置的 feelcaller 是没有效果的, 那这里边这个 color 值同样也可以使用两种方式来进行设置,一个是字符串,一个是 r g b 的模式。 我们再看一下下边这个刚才讲到的 begin feel 和 in the feel, 而他们两个要配对使用,而且呢我们这个 begin feel 这个函数呢,必须要放 在我们要绘制的呃需要填充的图形的前面进行声明。我们再看一个颜色设置 color, color 呢,它是同时可以设置画笔颜色和填充颜色,所以它有两个参数,一个是 color 一,一个是 color 二,那如果我的 color 里边只写了一个数值呢,那就代表着我的画笔颜色和填充颜色是相同的颜色。 我们来看一下在这里这个半径是二百的这个圆,他的画笔颜色是 red, 填充颜色是也冷,那么我可以通过 color 这个命令来同时设置他的画笔颜色和他的 填充颜色,哎,这两行呢就可以省掉了,我们运行看一下 同样的效果,哎,红色的画笔,黄色的填充 好,下边我们也来修改一下下边这个圆,然后他的填充色和画笔颜色也是不一样的,我们给他设置成一个样的值,我们给他通过哎 color 这个方法给他设置成一个一样的值,比方说我给他设成一个 look, 哎,我这里只设了一个数值,那就代表我这个圆,他的画笔颜色是蓝色,填充颜色呢也是蓝色,我们来看一下。 好,那么学习了画笔颜色和填充颜色的设置以后呢,我们看还有一个就是我们的背景色的设置 b g color, b g 就是 background 的背景, 然后 b g 卡尔呢,就设置我画布的背景颜色,然后这个卡尔这个值呢,我们通过这个呃字符串或者是我们的 r g b 模式都可以进行设置。那有没有同学注意我默认的画布的背景颜色是什么颜色 啊?是白色的,那我们来设置一下它的背景颜色,我们在最上面 d g color, 我们设置成黑色,运行。 好,我们看我们现在我们这个画布的背景呢,就是一个黑色的背景。 关于特特画笔的颜色设置呢,我们就讲这么多,我们再回忆一下,看一下。我们在颜色设置这里面呢重点讲了这样几个,第一个喷 color 设置画笔的颜色, 第二个 feel color 设置填充的颜色,第三个 color 设置画笔和填充的颜色, 然后第四个 begin feel 和 end feel, 它是我们在做填充颜色的时候的一个声明,开始填充和结束填充。然后最后我们学了一个画布背景颜色的设置。 那这里呢老师还要强调一个,就是我们这个颜色值的表示方法有两种,一种呢是通过字符串的方式来进行表示,将我们的颜色的单词写到字符串当中。 另外一种方式呢,就是通过 r g b 模式来进行表示。好,这一小节课呢,我们就讲到这里,拜拜。

同学们好,我们来看一下这道题关于命令 tail 点 pen size a 的 描述。下面选项中描述正确的是 a, b, c, d 四个选项。那么在 tail 库中, pen size 这个函数呢,是用来设置画笔的粗细度的, 这个参数 a 越大,画笔越粗,参数越小,画笔越细。好,下面我们来写一个代码的小例子看一下啊。 我们来看这个代码, import turtle turtle 点 color red 画笔的颜色为红色, pen size 是 二。然后呢, turtle turtle 点 circle 一 百画一个半径为一百的圆形。我们先来运行一下,看一下画笔粗细度是二,画出来的线条是有多粗,点击 red ok 同学们,看画笔粗细度为二的时候,是这个粗细度是吧?然后呢,我们改一下这个参数,把粗细度从二改成十,再来运行一下。 那我们看到这个画笔的粗细度就比刚才明显粗了很多,对不对? okay, 所以 说 pen size 是 设置画笔的粗细的,这个题应该选择 c 选项。


同学们好,我们今天带大家用 python 中的特特库来绘制一个正方形,我们都知道特特库也叫海龟库,是吧,它是 python 当中自带的一个专门用来绘图的一个库啊。嗯,首先呢,我们要第一行代码先写上 import 特特, 就是先把这个海龟库导入进来。然后呢可以设置一下这个画笔相关的一些属性啊,比如说设置一下这个画笔的颜色啊,在这个参数里,你可以写上这个颜色的单词,比如说你想画一个红色的线条,你就可以写 red blue 就 代表蓝色,对吧?还有等等啊,黄色 yellow 啊,那么我们这里写一个 red 红色。然后可以设置一下画笔的粗细度,用 pen size 这个方法, 参数里面写一个数字,数字越大线条越粗,默认的粗细度是一,我们这里设置一下粗细度为五。好,这些设置好之后呢,我们就可以来画正方形了。这里我们借助 for 循环 搭配 run 函数,因为我们要画一个正方形,它是有四条边,要循环四次,我们写一个 for i in run 次冒号为车。然后呢就画四条边, t 头点 forward f d f d, 它是 forward 这个函数的一个缩写啊,我们画一个边长为一百的正方形,就让他前进一百。这样画完一条边之后呢,让小海龟左转九十度,左转或右转九十度都可以画出来啊,哎,这样 循环四次就可以画出来一个正方形了。然后呢,我们保存代码运行好,我们点击这里的 run 运行代码,大家看,这样一个红色的边长为一百的正方形就画出来了。
![迎国庆,用Python绘制五星红旗 import turtle
turtle.setup(960, 640) # 设置画布宽高
turtle.bgcolor("red") # 设置背景颜色
turtle.fillcolor("yellow") # 设置填充颜色
turtle.color('yellow') # 设置画笔颜色
turtle.pensize(3) # 设置画笔大小
turtle.speed(4) # 设置绘画速度
# params 列表保存了5颗星的绘制参数
params = [
[-416, 192, 0, 192],
[-192, 276, -22.5, 64],
[-120, 220, -45, 64],
[-132, 108, 0, 64],
[-192, 54, -22.5, 64]
]
# 遍历参数
for param in params:
drawX = param[0] # 起始的绘制坐标X
drawY = param[1] # 起始的绘制坐标Y
drawA = param[2] # 起始的绘制角度
drawL = param[3] # 五角星的边长
turtle.up() # 抬起画笔
turtle.setheading(drawA) # 设置画笔角度
turtle.goto(drawX, drawY) # 移动画笔
turtle.down() # 放下画笔
# 准备填充
turtle.begin_fill()
# 绘制边
j = 0
while j < 5:
j = j + 1
# 绘制5次边
turtle.forward(drawL / 3)
turtle.left(72)
turtle.forward(drawL / 3)
turtle.right(144)
# 结束填充
turtle.end_fill()
turtle.hideturtle() # 隐藏画笔
turtle.Screen().exitonclick() # 点击退出
#国庆#迎国庆#喜迎国庆](https://p3-pc-sign.douyinpic.com/image-cut-tos-priv/c4618ef98048118b155c71a4182ae77a~tplv-dy-resize-origshort-autoq-75:330.jpeg?lk3s=138a59ce&x-expires=2103048000&x-signature=jgyBof2lR8X33ziASak%2B2D3MnHQ%3D&from=327834062&s=PackSourceEnum_AWEME_DETAIL&se=false&sc=cover&biz_tag=pcweb_cover&l=20260826043601DE048B499A84371937D5)
