题目
用 Python Turtle 绘制下面的图形。
题目说明
这道题也是三角形,但它不是直角三角形。程序先画一条 60 像素的水平线,再右转 110 度画出一条较长的斜线。最后一条边仍然交给 home() 完成,让海龟从当前位置直接回到原点。
最终效果

Python 海龟绘图 100 题,第 7 题
知识点
t.fd(60):画出第一条长度为 60 的水平边。t.rt(110):让海龟向右转 110 度,改变第二条边的方向。t.fd(100):画出第二条长度为 100 的斜边。t.home():让海龟回到原点,自动画出最后一条连接线。
绘图思路
先按默认方向画出第一条短边,再转 110 度画出第二条长边。画完两条已知边后,海龟停在第三个顶点。此时不必计算回到原点的角度和距离,直接使用 home(),就能把最后一条边补上。
完整代码
import turtle as t
t.fd(60)
t.rt(110)
t.fd(100)
t.home()
关键步骤讲解
画出第一条水平边
t.fd(60) 会让海龟从原点向右移动 60 个像素。第一条边比较短,用来确定三角形上方的边。
右转 110 度
t.rt(110) 表示海龟向右转 110 度。这个角度决定了第二条边的倾斜方向,也是这道题和前面直角图形的主要区别。
画出第二条长边
转向后执行 t.fd(100),海龟会沿新的方向前进 100 个像素,画出第二条边。这里的边长比第一条更长,所以三角形看起来会向下方延伸。
使用 home 补上最后一条边
t.home() 会让海龟从当前位置回到原点。画笔落下时,这条返回路径会成为三角形的第三条边。
常见错误
- 把
110写成90:图形会变成接近第 6 题的直角形状。 - 忘记最后的
t.home():只能画出两条边,三角形不会闭合。 - 把第二次前进写成
t.fd(60):两条边长度一样,效果和题目不一致。 - 在
home()前改变方向:home()本身会直接回到原点,前面多余的转向没有必要。
练习
把 110 改成 100 或 120,观察第二条边的倾斜角度怎样变化。也可以把 60 和 100 换成其他长度,看看三角形的形状会怎样改变。