Python Turtle绘图:从入门到精通
确保你已经安装了 Python(turtle 库是 Python 的标准库,无需额外安装)。:推荐使用 IDLE、VSCode 或 Jupyter Notebook。海龟的转向是“外角”(即 180° - 内角),所以需要转 120°。三角形的内角和为 180°,每个内角为 60°。效果:先向右画一条线,然后向左上方画一条斜线。
·
一、环境准备
1、安装 Python:确保你已经安装了 Python(turtle 库是 Python 的标准库,无需额外安装)。
2、选择编辑器:推荐使用 IDLE、VSCode 或 Jupyter Notebook。
二、初识 Turtle
1、导入库
import turtle # 导入整个库
t = turtle.Turtle() # 创建一个海龟对象,命名为 t
或简化写法:
from turtle import * # 导入所有函数(适合简单代码)
2、 基本窗口操作
(1)窗口标题和大小:
t.screen.title("我的第一个 Turtle 绘图") # 设置窗口标题
t.screen.setup(width=800, height=600) # 窗口大小(单位:像素)
(2)关闭窗口:
done() # 绘图完成后保持窗口
exitonclick() # 点击窗口关闭(推荐替代 done())
三、基本操作
1、画笔运动函数
| 类型 | 函数 | 说明 |
| 绘制函数 | forward(distance)/ fd(distance) |
向当前画笔方向移动 distance 像素 |
| backward(distance)/ bk(distance) |
向当前画笔反方向移动 distance 像素 | |
| dot(d,color) | 绘制直径为d,颜色为color的圆点 | |
| circle(radius[, angle]) | 绘制角度为angle、半径为radius的弧,正数时方向为逆时针;angle 默认值为360 | |
| write('str’,font=(familiy,size,type) | 在turtle位置写字符串,字体包括字体名、字体大小、字体类型 | |
| 转向函数 | left(degree) | 画笔方向逆时针移动 degree 度 |
| right(degree) | 画笔方向顺时针移动 degree 度 | |
| setheading(angle)/seth(angle) | 设置当前画笔朝向为angle的角度,angle为正数,逆时针方向 | |
| 跳转 函数 |
penup()/up() | 提起画笔,用于另起一个地方绘制 |
| pendown/down() | 落下画笔,用于开始绘制 | |
| goto(x,y) | 将画笔移动到坐标为(x,y)的位置 | |
| 位置 函数 |
setx(x) | 设置画笔在x轴上的x坐标,y坐标不变 |
| sety(y) | 设置画笔在y轴上的y坐标,x坐标不变 | |
| home() | 设置当前画笔位置为原点,朝向向东 |
2、画笔控制函数
| 类型 | 函数 | 说明 |
| 颜色函数 | pencolor(colorstring) | 设置画笔颜色,参数可以为颜色名称或三基色模式 |
| fillcolor(colorstring) | 设置填充颜色,参数可以为颜色名称或三基色模式 | |
| color( [pencolor,] fillcolor) | 设置画笔以及填充颜色,pencolor缺省时,只设置填充颜色 | |
| 填充 函数 |
begin_fll() | 准备开始填充图形 |
| end_fill() | 填充完成 | |
| flling() | 返回当前是否在填充状态 | |
| 状态函数 | hideturtle() | 隐藏画笔的 turtle 形状 |
| showturtle() | 隐藏画笔的 turtle 形状 | |
| 速度函数 | speed(s) | 设置画笔速度,s为整数类型,且取值在1-10之间 |
| 尺寸函数 | pensize(x)/width(s) | 设置画笔速度,s为整数类型,且取值在1-10之间 |
(3) 全局控制函数
| 类型 | 函数 | 说明 |
| 窗口函数 | clear() | 清空turtle窗口,turtle 的位置和状态不会改变 |
| reset() | 清空turtle窗口,turtle 的位置和状态不会改变 | |
| 画布函数 | screensize(width,height,bg) | 设置画布宽度、高度和背景颜色 |
| setup(width,height,startx,starty) | 设置画布宽度、高度和左上角坐标 |
四、练习一下
1、画一条直线
import turtle as t
t.forward(100) # 向右画100像素
t.left(120) # 左转120度
t.forward(80) # 继续画80像素
t.exitonclick() # 点击关闭窗口
效果:先向右画一条线,然后向左上方画一条斜线。
运行结果:

2、画一个三角形(带颜色)
from turtle import *
# 设置画笔
pensize(3) # 线条粗细
color("blue") # 线条颜色
# 开始画三角形
for _ in range(3):
forward(100) # 每条边100像素
left(120) # 内角为60度,外角120度
exitonclick() # 点击关闭窗口
为什么左转 120 度?
-
三角形的内角和为 180°,每个内角为 60°。
-
海龟的转向是“外角”(即 180° - 内角),所以需要转 120°。
运行结果:

3、画五角星
from turtle import *
color("red") # 线条颜色
begin_fill() # 开始填充
for _ in range(5):
forward(100) # 每条边长度
right(144) # 转角144度(180 - 36)
end_fill() # 填充颜色
exitonclick()
运行结果:

「智能机器人开发者大赛」官方平台,致力于为开发者和参赛选手提供赛事技术指导、行业标准解读及团队实战案例解析;聚焦智能机器人开发全栈技术闭环,助力开发者攻克技术瓶颈,促进软硬件集成、场景应用及商业化落地的深度研讨。 加入智能机器人开发者社区iRobot Developer,与全球极客并肩突破技术边界,定义机器人开发的未来范式!
更多推荐
所有评论(0)