python海龟(turtle)类库的基本使用说明

Turtle库是 Python中自带的用于绘制图形、图像的函数库。原理非常简单:在绘图窗口的正中间,有一只小海龟,用户通过一些指令可以控制小海龟在绘图区域上移动的方向和距离,记录小海龟的移动轨迹,即可完成图形、图像的绘制。Turtle库中提供了大量的函数,除了可以控制小海龟的行为外,还可以设置绘图区域的大小、位置,线条的颜色、样式,填充的位置、颜色等,此外,还提供了一些常见图形的绘制,如圆、多边形等。

更多功能请参考:turtle — 海龟绘图 — Python 3.12.1 文档

导入模块

本示例都使用 Turtle 类的一个实例,命名为 turtle。

import turtle

海龟动作

前进

turtle.forward(distance)
turtle.fd(distance)

参数:distance — 一个数值 (整型或浮点型),海龟前进 distance 指定的距离,方向为海龟的朝向。

后退

turtle.backward(distance)
turtle.back(distance)
turtle.bk(distance)

参数:distance 为一个数值,海龟后退 distance 指定的距离,方向与海龟的朝向相反。不改变海龟的朝向。

右转

turtle.right(angle)
turtle.rt(angle)

参数:angle — 一个数值 (整型或浮点型),海龟右转的角度。

左转

turtle.left(angle)
turtle.lt(angle)

参数:angle — 一个数值 (整型或浮点型),海龟左转的角度。

位置

turtle.goto(x, y=None)
turtle.setpos(x, y=None)
turtle.setposition(x, y=None)

海龟移动到一个绝对坐标。如果画笔已落下将会画线。不改变海龟的朝向。

参数:x — 一个数值,为x坐标;y — 一个数值,为y坐标


turtle.setx(x)
turtle.sety(y)

设置海龟的x、 y坐标,另一坐标保持不变。

参数:x、y — 一个数值,为海龟的对应坐标。


turtle.home()

海龟移至初始坐标 (0,0),并设置朝向为初始方向。

方向

turtle.setheading(to_angle)
turtle.seth(to_angle)

设置海龟的朝向为 to_angle。以下是以角度表示的几个常用方向,0 – 东(右),90 – 北(上),180 – 西(左),270 – 南(下)。

参数:to_angle — 一个数值 (整型或浮点型),面向的方向。

画圆

turtle.circle(radius, extent=None, steps=None)

绘制一个 radius 指定半径的圆。圆心在海龟左边 radius 个单位;extent 为一个夹角,用来决定绘制圆的一部分。如未指定 extent*则绘制整个圆。如果 *extent 不是完整圆周,则以当前画笔位置为一个端点绘制圆弧。如果 radius 为正值则朝逆时针方向绘制圆弧,否则朝顺时针方向。最终海龟的朝向会依据 extent 的值而改变。

圆实际是以其内切正多边形来近似表示的,其边的数量由 steps 指定。如果未指定边数则会自动确定。此方法也可用来绘制正多边形。

画笔控制

粗细

turtle.pensize(width=None)
turtle.width(width=None)

设置线条的粗细为 width。

颜色

turtle.pencolor(*args)

设置画笔颜色,例如 “red”、”yellow” 或 “#33cc8c”。

常用颜色对应名称如下:


turtle.color(*args)

设置画笔颜色和填充颜色。

例如:turtle.color(“red”, “green”),画笔颜色为red,填充颜色为green。

落笔

turtle.pendown()
turtle.pd()¶
turtle.down()

画笔落下 — 移动时将画线。

抬笔

turtle.penup()
turtle.pu()
turtle.up()

画笔抬起 — 移动时不画线。

清屏

turtle.clear()
从屏幕中删除指定海龟的绘图。不移动海龟。海龟的状态和位置以及其他海龟的绘图不受影响。

速度

turtle.speed(speed=None)

速度值从 1 到 10,画线和海龟转向的动画效果逐级加快。

参数:speed — 一个 0-10 范围内的整型数。

填充

turtle.begin_fill()
在绘制要填充的形状之前调用。

turtle.end_fill()
填充上次调用 begin_fill() 之后绘制的形状。

画笔状态

隐藏

turtle.hideturtle()
turtle.ht()

使海龟不可见。当你绘制复杂图形时这是个好主意,因为隐藏海龟可显著加快绘制速度。

显示

turtle.showturtle()
turtle.st()

使海龟可见。

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

购物车
  • Your cart is empty.
Scroll to Top