题目
用 Python Turtle 绘制下面的图形。
题目说明
这道题要画一个带中线的三角形。底边左右各 50 像素,两条斜边都是 100 像素,中间还有一条从顶点回到底边中点的线。代码可以先画右半边和中线,再回到底边中点,补出左半边。
最终效果

Python 海龟绘图 100 题,第 15 题
知识点
t.fd(50):从底边中点画到右端点。t.lt(120):转向左上方,画出右侧斜边。t.home():从顶点回到底边中点,画出中线。t.bk(50):从底边中点后退到左端点,准备画左侧斜边。
绘图思路
先从底边中点向右画 50 像素,到达右端点。接着左转 120 度,画出 100 像素的右侧斜边,到达顶点。然后用 home() 回到底边中点,顺便画出中线。最后从中点后退 50 像素到左端点,再左转 60 度,画出左侧斜边。
完整代码
import turtle as t
t.fd(50)
t.lt(120)
t.fd(100)
t.home()
t.bk(50)
t.lt(60)
t.fd(100)
关键步骤讲解
从底边中点开始
题图里的 O 在底边中点附近。先写 t.fd(50),可以画出底边右半段,并到达右端点。
画出右侧斜边
从右端点到顶点需要向左上方走。t.lt(120) 调整方向后,再写 t.fd(100),就能画出右侧斜边。
用 home() 画中线
海龟到达顶点后,t.home() 会让它回到底边中点。因为画笔没有抬起,这条返回路径会成为三角形的中线。
补出左侧斜边
回到底边中点后,t.bk(50) 会向左画出底边左半段。再左转 60 度并前进 100 像素,就能画到同一个顶点。
常见错误
- 忘记
t.home():中间那条线不会出现,后面的起点也不对。 - 把
t.bk(50)写成t.fd(50):海龟会回到右端点,而不是左端点。 - 把
t.lt(120)和t.lt(60)写反:两条斜边方向会错。 - 左右斜边长度不一致:三角形就不再对称。
练习
把底边半长 50 改成 70,再把两条斜边保持为 100,看看三角形会变宽还是变窄。也可以去掉 t.home(),观察中线和后续图形会发生什么变化。