题目
用 Python Turtle 绘制下面的图形。
题目说明
这道题要画一个像“田”字的图形。可以把它看成 4 个正方形围绕同一个顶点旋转排列。内层循环负责画一个正方形,外层循环负责换一个方向继续画。
最终效果

Python 海龟绘图 100 题,第 27 题
知识点
- 外层
for i in range(0, 4):重复画 4 个方向的正方形。 - 内层
for j in range(0, 4):每次画出一个正方形的 4 条边。 t.fd(100):每条边长度是 100 像素。t.rt(90):正方形每条边之后右转 90 度,画完一个正方形后也用它换方向。
绘图思路
先用内层循环画一个边长 100 的正方形。正方形画完后,海龟会回到起点,方向也回到原来的方向。接着右转 90 度,再画下一个正方形。这样重复 4 次,四个正方形围在一起,就形成田字形图案。
完整代码
import turtle as t
for i in range(0, 4):
for j in range(0, 4):
t.fd(100)
t.rt(90)
t.rt(90)
关键步骤讲解
内层循环画正方形
内层循环执行 4 次,每次前进 100 像素并右转 90 度。四条边画完后,一个正方形完成。
正方形画完会回到起点
画正方形时总共转了 360 度,所以海龟会回到起点和原来的朝向。这一点让外层循环可以继续从同一个点出发。
外层循环改变方向
每画完一个正方形后,再执行一次 t.rt(90)。海龟转到新的方向,下一次内层循环就会在另一个方向画正方形。
四次旋转组成田字形
外层循环一共执行 4 次,正好覆盖四个方向。四个正方形相互连接,图形中间就像一个田字。
常见错误
- 把外层循环次数写成
3:会少一个方向,田字形不完整。 - 把内层循环次数写成
3:每个正方形少一条边。 - 忘记外层最后的
t.rt(90):四个正方形会重复画在同一个位置。 - 把内层和外层的缩进混在一起:循环层级错了,图形也会错。
练习
把边长 100 改成 60 或 120,观察田字形整体大小的变化。也可以把所有 t.rt(90) 改成 t.lt(90),看看图形会朝相反方向展开。