【真题】青少年软件编程(Python一级)编程题:绘制图形
1此题目来自2021年06月电子学会青少年软件编程Python等级考试试卷(一级) 37题:绘制图形

1、题目:绘制如下图形,相关参数及要求如下:

(1)画笔起始位置不限,但是整个图形必须要能够在画布中呈现;
(2)大的正方形由四个小正方形组成;
(3)每个小正方形的边长均为100像素;
(4)左上角和右下角的正方形填充颜色均为黑色;
(5)所有的线条颜色均为黑色;
(6)绘制完成后,隐藏画笔。
3、答案
注意:仅供参考,考生可以自行设计,结果符合题目即可。
import turtle as t
for i in range(4):
t.forward(200)
t.right(90)
t.fillcolor('black')
t.begin_fill()
for i in range(4):
t.forward(100)
t.right(90)
t.end_fill()
t.penup()
t.goto(100, -100)
t.pendown()
t.begin_fill()
for i in range(4):
t.forward(100)
t.right(90)
t.end_fill()
t.hideturtle()
turtle.done()
评分标准:
(1)有turtle库导入;(2分)
(2)有绘制正方形;(2分)
(3)有填充颜色;(2分)
(4)绘制正方形4个;(8分)(每个2分)
(5)颜色填充正确;(4分)(每填充正确一个2分)
(6)隐藏画笔;(2分)
知识点:
(1)前进:forward()/fd()
turtle.forward(distance)
turtle.fd(distance)
海龟前进 distance 指定的距离,方向为海龟的朝向。
distance -- 一个数值 (整型或浮点型)
【例子】
>>> turtle.position()
(0.00,0.00)
>>> turtle.forward(25)
>>> turtle.position()
(25.00,0.00)
>>> turtle.forward(-75)
>>> turtle.position()
(-50.00,0.00)
(2)右转:right()/rt()
turtle.right(angle)
turtle.rt(angle)
angle -- 一个数值 (整型或浮点型)
海龟右转 angle 个单位。(单位默认为角度,但可通过 degrees() 和 radians() 函数改变设置。) 角度的正负由海龟模式确定,参见 mode()。
【例子】
>>> turtle.heading()
22.0
>>> turtle.right(45)
>>> turtle.heading()
337.0
(3)前往/定位:goto()/setpos()/setposition()
turtle.goto(x, y=None)
turtle.setpos(x, y=None)
turtle.setposition(x, y=None)
海龟移动到一个绝对坐标,如果画笔已落下将会画线,不改变海龟的朝向。
x -- 一个数值或数值对/向量 y -- 一个数值或 None
如果 y 为 None,x 应为一个表示坐标的数值对或 Vec2D 类对象 (例如 pos() 返回的对象)。
【例子】
>>> tp = turtle.pos()
>>> tp
(0.00,0.00)
>>> turtle.setpos(60,30)
>>> turtle.pos()
(60.00,30.00)
>>> turtle.setpos((20,80))
>>> turtle.pos()
(20.00,80.00)
>>> turtle.setpos(tp)
>>> turtle.pos()
(0.00,0.00)
(4)画笔落下:pendown()/pd()/down()
turtle.pendown()
turtle.pd()
turtle.down()
画笔落下 -- 移动时将画线。
(5)画笔抬起:penup()/pu()/up()
turtle.penup()
turtle.pu()
turtle.up()
画笔抬起 -- 移动时不画线。
(6)填充颜色:fillcolor()
返回或设置填充颜色。
turtle.fillcolor(*args)
turtle.fillcolor:返回以颜色描述字符串或元组表示的当前填充颜色。turtle.fillcolor(colorstring):设置填充颜色为 colorstring 指定的颜色描述字符串,例如 "red"、"yellow" 或 "#33cc8c"。turtle.fillcolor((r, g, b)):设置填充颜色为以 r, g, b 元组表示的 RGB 颜色。turtle.fillcolor(r, g, b):设置填充颜色为 r, g, b 表示的 RGB 颜色。
【例子】
>>> turtle.fillcolor("violet")
>>> turtle.fillcolor()
'violet'
>>> turtle.colormode(255)
>>> turtle.fillcolor((50, 193, 143)) # Integers, not floats
>>> turtle.fillcolor()
(50.0, 193.0, 143.0)
>>> turtle.fillcolor('#ffffff')
>>> turtle.fillcolor()
(255.0, 255.0, 255.0)(7)开始填充:begin_fill()
turtle.begin_fill()
在绘制要填充的形状之前调用。要配合turtle.end_fill()使用。
(8)结束填充:end_fill()
turtle.end_fill()
填充上次调用 begin_fill() 之后绘制的形状。要配合turtle.begin_fill()使用。
【例子】
>>> turtle.color("black", "red")
>>> turtle.begin_fill()
>>> turtle.circle(80)
>>> turtle.end_fill()
添加 家长论坛微信

全部 0条评论