题目

用 Python Turtle 绘制下面的图形。

题目说明

这道题要画一个梯形。底边是 100 像素,上边是 30 像素,左侧斜边是 60 像素,右侧斜边没有直接给出长度。可以先从右下角向左画底边,再画左侧斜边和上边,最后用 home() 回到原点,画出右侧斜边。

最终效果

Python 海龟绘图 100 题,第 18 题

Python 海龟绘图 100 题,第 18 题

知识点

  • t.bk(100):向后退 100 像素,画出向左的底边。
  • t.lt(60):左转 60 度,准备画左侧斜边。
  • t.fd(60):画出左侧斜边。
  • t.rt(60):转回水平方向,画出上边。
  • t.home():回到原点,画出右侧斜边。

绘图思路

题图的原点在右下角附近。先用 t.bk(100) 向左画底边,到达左下角。接着左转 60 度画左侧斜边,再右转 60 度恢复水平,画出 30 像素的上边。最后当前位置在右上角,用 t.home() 回到原点,梯形就闭合了。

完整代码

Python
import turtle as t

t.bk(100)
t.lt(60)
t.fd(60)
t.rt(60)
t.fd(30)
t.home()

关键步骤讲解

用后退画底边

t.bk(100) 会让海龟沿当前方向的反方向移动。海龟默认面向右方,所以后退时会向左画出底边。

画左侧斜边

到达左下角后,t.lt(60) 让海龟转向右上方。再写 t.fd(60),就能画出题图中标注为 60 的斜边。

画出上边

左侧斜边画完后,t.rt(60) 会让海龟重新面向右方。接着 t.fd(30) 画出上边。

回到原点完成梯形

最后一条右侧斜边没有标长度。调用 t.home(),海龟会回到原点,并画出这条闭合边。

常见错误

  • t.bk(100) 写成 t.fd(100):底边会向右画,整个图形方向反了。
  • 忘记 t.rt(60):上边不会保持水平。
  • 把上边长度写成 60:梯形比例会变错。
  • home() 前抬笔:右侧斜边不会出现。

练习

把上边 30 改成 50,观察梯形右侧斜边的变化。也可以把左侧斜边 60 改成 80,看看梯形高度会怎样改变。