目录
1. 第一个绘图
2. 玫瑰花
3.蟒蛇绘制
4.正方形绘制
5.八边形
6.八角形
7.叠边形绘制
8.使用循环绘图
9.风轮绘制
请将以下代码复制到program.py
中,点击「运行」按钮,查看这段代码的执行结果。
import turtle
alpha = turtle.Turtle()
alpha.color('red')
alpha.forward(100)
alpha.left(90)
import turtle
alpha = turtle.Turtle()
alpha.color('red')
alpha.forward(100)
alpha.left(90)
这里我们换了另一段代码,它能画出来什么呢?
想知道答案么?
那就点击 运行代码
,让它把图形画出来吧。
点击运行代码
,看看会发生什么。
你会发现,画布上面画了一朵玫瑰花;你可以尝试将第 11 行的 red
改为 purple
,来看看玫瑰花会发生什么变化。
import turtle
turtle.setup(350, 600)
alpha = turtle.Turtle()
alpha.penup()
alpha.left(90)
alpha.fd(200)
alpha.pendown()
alpha.right(90)
alpha.fillcolor("red")
alpha.begin_fill()
alpha.circle(10, 180)
alpha.circle(25, 110)
alpha.left(50)
alpha.circle(60, 45)
alpha.circle(20, 170)
alpha.right(24)
alpha.fd(30)
alpha.left(10)
alpha.circle(30, 110)
alpha.fd(20)
alpha.left(40)
alpha.circle(90, 70)
alpha.circle(30, 150)
alpha.right(30)
alpha.fd(15)
alpha.circle(80, 90)
alpha.left(15)
alpha.fd(45)
alpha.right(165)
alpha.fd(20)
alpha.left(155)
alpha.circle(150, 80)
alpha.left(50)
alpha.circle(150, 90)
alpha.end_fill()
alpha.left(150)
alpha.circle(-90, 70)
alpha.left(20)
alpha.circle(75, 105)
alpha.setheading(60)
alpha.circle(80, 98)
alpha.circle(-90, 40)
alpha.left(180)
alpha.circle(90, 40)
alpha.circle(-80, 98)
alpha.setheading(-83)
alpha.fd(30)
alpha.left(90)
alpha.fd(25)
alpha.left(45)
alpha.fillcolor("green")
alpha.begin_fill()
alpha.circle(-80, 90)
alpha.right(90)
alpha.circle(-80, 90)
alpha.end_fill()
alpha.right(135)
alpha.fd(60)
alpha.left(180)
alpha.fd(85)
alpha.left(90)
alpha.fd(80)
alpha.right(90)
alpha.right(45)
alpha.fillcolor("green")
alpha.begin_fill()
alpha.circle(80, 90)
alpha.left(90)
alpha.circle(80, 90)
alpha.end_fill()
alpha.left(135)
alpha.fd(60)
alpha.left(180)
alpha.fd(60)
alpha.right(90)
alpha.circle(200, 60)
使用turtle库,绘制一个蟒蛇形状的图形。
import turtle
#turtle.setup(650,350,200,200)
turtle.penup()
turtle.fd(-250)#海龟的正前方向运行
turtle.pendown()
turtle.pensize(15)
turtle.pencolor("purple")
turtle.seth(-40)#改变海龟行进方向
for i in range(4):
turtle.circle(40,80)
turtle.circle(-40,80)
turtle.circle(40,80/2)
turtle.fd(40)
turtle.circle(16,180)
turtle.fd(40*2/3)
turtle.done()
通过之前 alpha 绘图的效果我们了解到:
alpha.color('red')
是让 alpha 的颜色变成 红 色;
alpha.forward(100)
是让 alpha 前进 100 个单位;
alpha.left(90)
是让 alpha 左转 90 度;
现在使用这些代码让 alpha 画出一个完整的正方形吧。
import turtle
# 完善代码,画一个正方形。
alpha = turtle.Turtle()
alpha.color('red')
alpha.forward(100)
alpha.left(90)
alpha.fd(100)
alpha.right(-90)
alpha.fd(100)
alpha.right(-90)
alpha.fd(100)
使用turtle库,绘制一个八边形。
注意: 这不是自动评阅题目,仅用于练习,没有评阅。请补充"编程模板"中横线内容。
import turtle as t
t.pensize(2)
for i in range(8):
t.fd(60)
t.left(45)
使用turtle库,绘制一个八角图形。
注意: 这不是自动评阅题目,仅用于练习,没有评阅。请补充"编程模板"中横线内容。
import turtle as t
t.pensize(2)
for i in range(8):
t.fd(150)
t.left(135)
使用turtle库,绘制一个叠边形,其中,叠边形内角为100度。
import turtle as c
c.pensize(2)
for i in range(9):
c.fd(100)
c.left(80)
循环能将大量重复的代码,缩减到只用几行代码,就能得到与之前相同的效果。
现在使用循环来简化右侧画五角星的代码,图形如下所示:
创建循环,让 turtle 循环画出五角星的五条边。
import turtle
alpha = turtle.Turtle()
steps = 100
angle1 = (180 * (5 - 2)) / 5
angle2 = 180 - angle1
angle = 2 * angle2
for i in range(5):
alpha.forward(steps)
alpha.right(angle)
使用turtle库,绘制一个风轮效果,其中,每个风轮内角为45度,风轮边长150像素。
注意: 这不是自动评阅题目,仅用于练习,没有评阅。
提示: turtle.goto(x,y)函数,能够将turtle画笔移动到坐标(x,y)
import turtle as t
t.pensize(2)
for i in range(4):
t.seth(90*i)
t.fd(150)
t.right(90)
t.circle(-150, 45)
t.goto(0,0)
import turtle as c
#上风轮
c.left(45)
c.fd(150)
c.left(90)
c.circle(150,45)
c.right(-90)
c.fd(150)
#下风轮
c.left(-45)
c.fd(150)
c.left(90)
c.circle(150,45)
c.right(-90)
c.fd(150)
#左风轮
c.left(45)
c.fd(150)
c.left(90)
c.circle(150,45)
c.right(-90)
c.fd(150)
#右风轮
c.left(-45)
c.fd(150)
c.left(90)
c.circle(150,45)
c.right(-90)
c.fd(150)