当前位置:首页>python>Python入门用10行代码画一朵花

Python入门用10行代码画一朵花

  • 2026-09-19 09:19:06
Python入门用10行代码画一朵花

今天是孩子的第一节Python课。

我知道很多家长和孩子一听到"写代码"就紧张——要敲英文、要记语法、黑乎乎的屏幕看着就害怕。

所以我的第一节Python课,从来不教 print("Hello World")。我教的是:画画。

没错,Python可以画画。而且只要10行代码,就能画出一朵漂亮的花。

准备工作:安装Python

如果电脑上还没有Python环境,按这个步骤来:

  • 打开浏览器,搜索 Thonny(thonny.org)
  • 下载安装 Thonny(它自带Python,不需要额外装)
  • 安装完打开,你会看到一个简洁的编辑器界面
💡 为什么推荐Thonny?

Thonny是专门为初学者设计的Python编辑器,界面简单,自带Python环境,报错提示也更友好。等孩子熟练了,再换专业的编辑器也不迟。

第一个程序:画一个正方形

先从最简单的开始,画一个正方形。在Thonny里输入以下代码:

import turtle

t = turtle.Turtle()

t.forward(100)
t.right(90)
t.forward(100)
t.right(90)
t.forward(100)
t.right(90)
t.forward(100)

点击运行按钮(绿色三角形),你会看到一个窗口弹出来,一只小箭头(就是"海龟")在屏幕上画出了一个正方形!

🐢 什么是turtle?

turtle(海龟)是Python自带的画图工具。想象有一只拿着笔的小海龟,你给它指令:"往前走100步"、"右转90度",它就照做,走过的地方会留下线条。是不是很像Scratch里的画笔?

来逐行解释这段代码:

  • 📌 import turtle — 告诉Python:我要用画图工具
  • 📌 t = turtle.Turtle() — 创建一只小海龟,叫它 t
  • 📌 t.forward(100) — 往前走100步
  • 📌 t.right(90) — 右转90度

走100步、转90度,重复4次——正方形就出来了。

用循环简化代码

聪明的孩子可能已经发现了:上面的代码有很多重复!"走100步、右转90度"重复了4遍。

在Scratch里我们用"重复执行",Python里用 for 循环:

import turtle

t = turtle.Turtle()

for i in range(4):
    t.forward(100)
    t.right(90)

5行代码,效果一模一样。这就是循环的威力。

💬 我会跟孩子说:"for i in range(4) 就相当于Scratch里的'重复4次'。你看,你已经会了!只是换了一种写法而已。"孩子一听就不害怕了。

重头戏:10行代码画一朵花

准备好了吗?见证奇迹的时刻到了。输入以下代码:

import turtle

t = turtle.Turtle()
t.speed(0)
t.color("red")

for i in range(36):
    t.forward(200)
    t.right(170)
    t.forward(200)
    t.right(170)

点击运行——

🌸 一朵漂亮的花在屏幕上绽放了!

孩子看到这个效果的时候,眼睛都亮了。每次上到这节课,教室里都是"哇——"的惊叹声。

代码解释

  • 🔹 t.speed(0) — 画得最快(不然得等半天)
  • 🔹 t.color("red") — 画笔颜色设为红色
  • 🔹 for i in range(36) — 重复36次
  • 🔹 t.forward(200) — 往前走200步
  • 🔹 t.right(170) — 右转170度(接近180度但不到,这就是花瓣产生的秘密!)
🧠 为什么转170度会形成花?

如果转180度,海龟会原路返回,什么也画不出来。但转170度,每次都会偏一点点,经过36次之后,这些微小的偏移叠加起来,就形成了花瓣的形状。这其实是数学中的对称和旋转概念!

动手改一改

最精彩的部分来了——让孩子自己改参数,看看会发生什么:

  • 把 t.right(170) 改成 t.right(160),花瓣会变宽
  • 把 t.right(170) 改成 t.right(175),花瓣会变细
  • 把 "red" 改成 "blue"、"purple"、"gold",换个颜色
  • 把 range(36) 改成 range(72),花瓣更多
  • 把 t.forward(200) 改成 t.forward(100),花变小

我班上一个孩子改了半个小时,最后做出了一个彩虹花——每片花瓣颜色不一样。他问我:"老师,怎么让每次画的颜色不同?"我就顺势教了他列表和索引。你看,好奇心驱动的学习,效率比强迫高100倍。

进阶:彩虹花

如果孩子玩得意犹未尽,试试这个彩虹版本:

import turtle

t = turtle.Turtle()
t.speed(0)
colors = ["red", "orange", "yellow", "green", "blue", "purple"]

for i in range(36):
    t.color(colors[i % 6])
    t.forward(200)
    t.right(170)
    t.forward(200)
    t.right(170)

colors[i % 6] 的意思是:按顺序循环使用6种颜色。% 是"取余"运算,i % 6 的结果会在0-5之间循环。

不需要孩子完全理解这个数学概念,先让他看到效果,好奇心会驱动他去理解。

今天学了什么

  • ✅ 安装了Python环境(Thonny)
  • ✅ 认识了 turtle 海龟画图库
  • ✅ 学了基本指令:forward(前进)、right(右转)、color(颜色)
  • ✅ 用 for 循环替代重复代码
  • ✅ 理解了"改参数看效果"的实验精神

🌟 第一节Python课的目标不是教会语法,而是让孩子觉得:Python好玩!

只要孩子觉得好玩,后面的路就好走了。语法可以慢慢学,兴趣不能等。

下一篇我们来做一个更实用的项目——用Python做一个简易计算器。会学到输入输出、变量和条件判断,都是Python的核心基础。

· · ·

码小芽 | 让每个孩子都能快乐编程 🌱

少儿编程老师 | 3年一线教学经验 | 用真话聊编程教育

最新文章

随机文章