题目
用 Python Turtle 绘制下面的图形。
题目说明
这道题要画一个正五边形。五条边长度相同,每次转向的角度也相同。正五边形一共转满一圈是 360 度,所以每画完一条边后右转 360/5 度,也就是 72 度。
最终效果

Python 海龟绘图 100 题,第 20 题
知识点
for i in range(0, 5):重复执行 5 次,对应五边形的 5 条边。t.fd(100):每次向前画出一条 100 像素的边。t.rt(360/5):每画完一条边右转 72 度。- 正多边形转角:边数是
n时,每次转向可以写成360/n。
绘图思路
先把五边形看成 5 条相同的线段。海龟从原点出发,画一条边后右转 72 度,连续重复 5 次,就会回到起点附近并闭合成一个正五边形。这里不需要分别写 5 组命令,用循环更清楚。
完整代码
import turtle as t
for i in range(0, 5):
t.fd(100)
t.rt(360/5)
关键步骤讲解
确认边数
题图是五边形,所以循环次数写成 5。每次循环负责画一条边。
保持边长相同
t.fd(100) 每次都画 100 像素,五条边长度一致,图形才会接近正五边形。
计算转向角度
正多边形绕一圈是 360 度。五边形有 5 条边,所以每次转向是 360/5,也就是 72 度。
用循环避免重复代码
如果不用循环,需要连续写 5 次前进和转向。循环把这组重复动作收起来,改边长或边数时也更方便。
常见错误
- 把循环次数写成
4或6:图形会变成四边形或六边形的画法。 - 把
360/5写成5/360:转角会很小,图形无法闭合。 - 忘记缩进循环里的两行命令:Python 会报缩进错误。
- 把
t.rt()改成t.lt()后没有预期方向:图形会朝另一侧绘制,但仍然是五边形。
练习
把 100 改成 60 或 150,观察五边形大小的变化。再把循环次数和转角一起改成 6 与 360/6,试着画出正六边形。