科创科普:Python「海龟绘图」——用循环画出美丽的图案
一、什么是海龟绘图?
Python 里藏着一只神奇的「小海龟」:你指挥它前进、转弯、抬笔、落笔,它走过的路线就会变成画在屏幕上的线条。这个功能叫 turtle(海龟)绘图,是 Python 自带的模块,不需要额外安装,非常适合编程入门。很多同学的第一幅「程序画作」就是用海龟画出来的。
它的原理很简单:屏幕中央有一只小海龟,它嘴里叼着一支笔。你命令它「向前走100步」,它就画出一条长100的直线;你命令它「右转90度」,它就原地转弯。只要你规划好路线,就能画出正方形、五角星、螺旋甚至花朵。
二、让海龟动起来
在 Python 中先导入海龟模块,再让海龟前进:
import turtle
t = turtle.Turtle() t.forward(100)
运行后,屏幕上会弹出一个画布窗口,小海龟向前走了100步,留下一条直线。t.forward(100) 里的数字是「步数」,数字越大线越长。再试试转弯:t.right(90) 表示向右转90度。前进和转弯是海龟的两个基本动作,所有图案都由它们组合而成。
三、用循环画一个正方形
画正方形需要重复四次「前进100、右转90」。如果一行行写四遍太啰嗦,Python 的 for 循环可以帮你:
for i in range(4): t.forward(100) t.right(90)
range(4) 表示让里面的两行代码重复执行4次。运行后你会发现,海龟正好绕了一圈,画出一个正方形!想一想:为什么转4次90度刚好是360度?因为 4 × 90 = 360,海龟转完一整圈,方向回到起点。
四、循环的力量:从正方形到多边形
只要改一个数字,就能画出不同的正多边形。正六边形需要转 360 ÷ 6 = 60 度,正八边形需要转 360 ÷ 8 = 45 度。规律是:正 n 边形,每次转 360 ÷ n 度,重复 n 次。
for i in range(6): t.forward(100) t.right(60)
你甚至可以用循环画圆:让海龟每次只前进1步、转1度,重复360次,走出来的就是一个非常平滑的圆。计算机不怕重复劳动,这正是编程的意义——把重复的事情交给循环,把创造力留给人脑。
五、加上颜色,画一朵「彩虹螺旋」
turtle 还支持颜色和笔的粗细。试着画一条越来越短的彩色螺旋:
import turtle
t = turtle.Turtle() colors = ["red", "orange", "yellow", "green", "blue", "purple"] for i in range(36): t.pencolor(colors[i % 6]) t.forward(i * 5) t.right(59)
这段代码里,i 从0变到35,海龟前进的距离 i×5 越来越长,每次右转59度,每转一圈换一种颜色,最终画出绚丽的彩虹螺旋。i % 6 是取余数,让颜色编号始终在0到5之间循环。
六、动脑练习
- 基础题:画一个正三角形。提示:三角形外角是120度,需要重复几次?
- 提高题:用循环画一个正方形,但让每条边颜色不同,想一想怎么在循环里切换颜色。
- 挑战题:画一个五角星。提示:五角星每次转弯的角度是144度,需要重复5次。
- 想一想:如果把 t.right(90) 改成 t.left(90),正方形会往哪个方向画?如果前进距离不固定,会得到什么图形?