为什么从 Scratch 转到 Python

当孩子已经能用 Scratch 熟练做出动画和游戏之后,下一步就是接触真正的文字编程语言。Python 是青少年学代码的最佳起点:语法接近自然英语、缩进严格但不啰嗦、社区资源丰富,而且很多大学和工作岗位都在用它。从 Scratch 到 Python 的过渡不是推倒重来,而是把积木里的逻辑用文字重新表达一遍。

在 Scratch 里拖一块"移动 10 步"积木,到了 Python 里就是 x = x + 10。在 Scratch 里用 C 形积木包住的循环,到了 Python 里就是 for i in range(10):。逻辑完全一样,只是表达方式从图形变成了文字。这种平移学习让孩子不会觉得是在学全新的东西。

Scratch 是"看得见的编程",Python 是"写出来的编程"。思维是同一套,工具换了而已。
本文核心知识点
  • print在屏幕上输出文字,对应 Scratch 的"说一句话"。
  • 变量存储数据的盒子,对应 Scratch 的"建立变量"。
  • if条件判断,对应 Scratch 的"如果那么"积木。
  • for/while循环,对应 Scratch 的"重复执行"积木。
青少年 Python 入门示意:蓝色渐变背景上少年坐在笔记本电脑前书写,屏幕显示抽象几何图形,漂浮发光变量方块和上升柱状图
从积木到文字:屏幕上的代码像积木一样排列,每一行都是一个明确的指令。

环境搭建:装好 Python 和编辑器

学 Python 第一步不是写代码,而是把环境装好。推荐安装 Python 官方版本(去 python.org 下载最新稳定版),安装时记得勾选"Add Python to PATH"选项,这样在命令行里直接输入 python 就能启动。

编辑器推荐用 Thonny——这是专门为初学者设计的 Python 编辑器,界面简洁,自带错误提示和变量观察窗,比 VS Code 轻量很多。安装好 Thonny 之后,打开它就是一个空白编辑窗口,下面是交互式 Shell。

工具作用类比 Scratch
Python 解释器执行代码的引擎点绿旗后的运行引擎
Thonny 编辑器写代码的地方Scratch 的脚本区
Shell 交互窗口即时输入即时执行单个积木单独测试

装好之后,在 Shell 里输入 print("你好") 然后回车,如果屏幕上出现"你好"两个字,说明环境搭好了。这一步一定要让孩子自己做——第一次看到自己写的代码在屏幕上输出文字,是学编程最有仪式感的瞬间。

第一行代码:print 与变量

print 是 Python 里最常用的函数,作用是在屏幕上输出内容。下面这段代码就是一个完整的 Python 程序:

print("欢迎来到 Python 世界")
print("我是青少年编程学员")

把这两行保存成 hello.py,按运行按钮,下面 Shell 窗口就会依次输出两行文字。这和 Scratch 里"说一句话"积木做的事情一模一样。

接下来学变量。变量就是一个带名字的盒子,你可以往里面放数据:

name = "小明"
age = 12
print(name)
print(age)

这里 name 是一个字符串变量(放文字),age 是一个整数变量(放数字)。print 会把变量里存的内容打出来。在 Scratch 里,"建立变量"就是干这个的——你给一个变量起名字,然后随时改它的值。

Python 的变量不需要提前声明类型,你写 age = 12 它就知道这是整数;写 name = "小明" 它就知道这是文字。这种灵活性对初学者很友好——不用先学数据类型,直接用就行。

条件判断:if 让程序做选择

程序不只是按顺序执行,它还要会做判断。比如用户输入一个分数,大于 60 就显示"及格",否则显示"不及格"。这就是 if 条件判断。

score = 75
if score >= 60:
    print("恭喜及格了")
else:
    print("还需要努力")

注意 Python 的语法细节:if 那一行末尾要有冒号,下面缩进的内容才属于这个 if 块。缩进在 Python 里不是风格问题,而是语法要求——你缩了多少空格,就决定了哪些代码属于这个 if。

这和 Scratch 里的 C 形积木是对应的:Scratch 用积木的形状告诉你"这块在条件里面",Python 用缩进告诉你"这行在 if 里面"。

age = 14
if age >= 18:
    print("成年人")
elif age >= 12:
    print("青少年")
else:
    print("儿童")

elif 是"否则如果"的意思,可以连续写多个条件。这个例子里 14 岁会命中"青少年"分支。在 Scratch 里,你需要叠多个"如果那么"积木才能做同样的事,Python 里用 elif 更紧凑。

循环:for 与 while 重复执行

循环让程序重复做同一件事。Python 有两种循环:for 循环(知道要重复几次)和 while 循环(不知道要重复几次,直到某个条件满足才停)。

for i in range(5):
    print("第", i+1, "次问好")

这段代码会打印"第 1 次问好""第 2 次问好"……一直到第 5 次。range(5) 生成 0 到 4 五个数字,i 每次取一个值。这和 Scratch 的"重复执行 10 次"积木完全对应。

while 循环适合"一直做某事直到条件变了":

count = 1
while count <= 3:
    print(count)
    count = count + 1

这个例子里 count 从 1 开始,每次打印并加 1,直到 count 大于 3 就停。对应 Scratch 的"重复执行直到"积木。

for 与 while 怎么选
  • 已知次数用 for,比如画 5 颗星星、出 10 道题。
  • 未知次数用 while,比如一直猜数字直到猜对。
  • 死循环while True 会永远跑,用 break 跳出。