首页 信息课代码详解
文章
取消

信息课代码详解

导读

本篇写作灵感来源

今日信息课上老师发来一段python turtle程序,但是并没有详细解释每一行是做什么用的,也没有对python语法进行讲解说明,这对同学们的自由发挥起到了很大限制。我认为是时候来发挥我的作用了:-)

课上原始代码

代码出自信息技术必修第一册44页

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import turtle
import time

light = turtle.Turtle()
light.hideturtle()
light.screen.delay(0)

light.color("red", "red")
light.begin_fill()
light.circle(20)
light.end_fill()

time.sleep(15)

light.color("green", "green")
light.begin_fill()
light.circle(20)
light.end_fill()

运行演示

首先屏幕中出现了一个红色的圆

iShot_2023-02-23_20.37.32.png

15秒过后,变成了一个绿色的圆

iShot_2023-02-23_20.37.44.png

逐行解析

一、引入“库”

1
2
import turtle
import time

我们可以发现,程序的前两行开头都是import关键字import的作用是用来导入我们需要的库。

那么“库”是什么?“库”是“类”和“函数”的集合,可以简单理解为从事各种各样劳动的工人。与修水管要找水管工,贴瓷砖要找瓷砖工是一样的道理。我们现在需要画图,当然需要画图的工人turtle;要模拟本程序中红绿灯切换过程中的等待时间,要用到python中专门控制时间的工人time。这两个库你可以直接导入,因为它们是内置的,很多有意思的库你无法直接导入,需要先安装。

二、创建一个画板,并设置其属性

1
2
3
4
5
light = turtle.Turtle()
light.hideturtle()
light.screen.delay(0)

light.color("red", "red")

上方一共有四行代码,每一行都有自己的独特功能。

第一行的作用是创建一个画板,我们使用库turtle中的函数Turtle()创建了一张画板,并将它赋值给变量light,这样我们以后对画板进行属性设置就可以直接对light操作了。

第二行我们设置了画板的属性,利用函数hideturtle()隐藏了画板中的画笔。没错,原始画板是有画笔的,它长这样(下图)。

iShot_2023-02-23_20.55.36.png

第三行的作用是利用函数来停用画板的绘制过程。其实画板默认是带有绘制过程的。

第四行的作用是设置画笔颜色(轮廓颜色)和填充颜色,这里都设置成了红色。

三、开始动笔,画一个圆

1
2
3
light.begin_fill()
light.circle(20)
light.end_fill()

第一行的含义是告诉程序我们要开始填充了,这样上文设置的画笔颜色和填充颜色才会起作用,程序会把begin_fill()end_fill()之间画笔走过路径的闭合图形进行上色。

第二行的作用是告诉程序我们要绘制一个圆,并且它的直径为20。一些聪明的同学可能认为把circle改成square可以画一个正方形,其实不是这样的,因为circle在这里是一个函数,而不是参数,参数两端都是带双引号的,你改成了square可能画板并没有这个函数。

四、暂停几秒再继续吧

1
time.sleep(15)

这行的作用是告诉程序停止15秒再继续执行,模拟信号灯的切换时间。

五、梅开二度

1
2
3
4
light.color("green", "green")
light.begin_fill()
light.circle(20)
light.end_fill()

这几行与上文几乎重复,将红灯覆盖,颜色调整为绿色。

后记

其实还有一些同学问我循环怎么做,其实这也很简单,不过今天已经太晚了,我就不写了,以后可能会继续在博客上更新,请大家关注我的博客,谢谢啦!

请转发并留言哦~

本文由作者按照 CC BY 4.0 进行授权

优点英语密码逻辑

班级合唱存档