海龟作图实例
常用语法
| 常用命令 | 说明 |
|---|---|
| pen=turtle.Pen() | 获取笔 |
| pen.forward/backward(100) | 向前/后走(100像素长度) |
| pen.left/right(90) | 向左/右转(90角度) |
| pen.circle(10) | 画圆(10像素半径) |
| 画笔属性 | 说明 |
| pen.speed(5) | 画笔速度(1-10)0最高 |
| pen.pencolor(‘red’) | 画笔颜色(颜色) |
| pen.pensize(5) | 画笔粗细 |
| 画笔动作 | 说明 |
| pen.penup() | 画笔抬起,不会作画 |
| pen.pendown() | 画笔落下,开始作画 |
| pen.goto(x,y) | 将画笔移动到(x,y) |
| 颜色填充 | 说明 |
| pen.begin_fill() | 开始填充 |
| pen.fillcolor(‘red’) | 填充颜色 |
| pen.end_fill() | 结束填充 |
| pen.color(color1,color2) | 同时设置笔的颜色,填充颜色 |
| 画笔状态 | 说明 |
| turtle.hideturtle() | 隐藏海龟 |
| turtle.showturtle() | 海龟可见 |
| 动画控制 | 说明 |
| turtle.delay(5) | 绘画延迟5毫秒 |
| turtle.tracer(5,10) | 执行第5个画面更新,绘画延迟10ms |
实例
一、“8”字
import turtle
pen = turtle.Pen()
pen.pensize(2)
pen.speed(1)
pen.forward(100)
pen.goto(0, 0)
pen.pencolor('red')
pen.circle(100)
pen.left(180)
pen.begin_fill()
pen.color('green', 'green')
pen.circle(100)
pen.end_fill()
turtle.done()
二、奥运五环
import turtle
pen=turtle.Pen()
pen.speed(10)
pen.pencolor('blue')
pen.pensize(5)
pen.circle(50)
pen.penup()
pen.forward(80)
pen.pendown()
pen.pencolor('black')
pen.circle(50)
pen.penup()
pen.forward(80)
pen.pendown()
pen.pencolor('red')
pen.circle(50)
pen.penup()
pen.left(90)
pen.forward(50)
pen.left(90)
pen.forward(50)
pen.pendown()
pen.pencolor('green')
pen.circle(50)
pen.penup()
pen.forward(80)
pen.pendown()
pen.pencolor('yellow')
pen.circle(50)
turtle.done()
三、螺旋图
import turtle
pen = turtle.Pen()
pen.speed(0)
turtle.bgcolor('black')
color = ['red','yellow','blue','green','white']
turtle.tracer(5)
for x in range(200):
pen.pencolor(color[x % 5])
pen.forward(x)
pen.left(73)
for x in range(200, 400):
pen.pencolor(color[x % 5])
pen.forward(x)
pen.left(71)
# 隐藏海龟
pen.hideturtle()
turtle.mainloop()
注意
- 隐藏海龟本身
turtle.hideturtle()
- 设置刷新率
turtle.tracer(n, delay)
这两个无法同时设置,不然无法隐藏海龟本身