courses/python
Python 编程入门 · 5 年级及以上
课程简介
Python 是语法最接近自然语言的代码语言,是孩子从图形化编程过渡到真实代码的完美桥梁。本课程不是"讲一遍概念就过",而是每个知识点都配代码示例、运行结果与动手练习,让孩子真正看懂每一行代码在做什么。
课程按 环境搭建 → 变量类型 → 分支循环 → 字符串列表 → 函数模块 → 项目实战 六章递进,共 16 次课。每章都从孩子熟悉的 Scratch 概念切入,指出"这个积木就是这段代码",再用真实程序巩固。学完就能独立写出计算器、猜数字、海龟画图等完整小项目。
适合对象
- 5 年级及以上,零基础或学过图形化编程。
- 会用键盘输入、能正确书写英文单词即可。
- 未来想进入信息学竞赛体系,先打牢编程感觉。
课程大纲
第1章 环境搭建:安装 Python 与第一个程序
第2章 变量与数据类型:盒子、数字与文字
第3章 条件判断与循环:让程序学会思考
第4章 字符串与列表:批量处理数据
第5章 函数与模块:把程序拆成积木
第6章 海龟画图与小项目实战
课程内容
本课目录(点击跳转)
↑ 目录第 1 章 环境搭建:安装 Python 与第一个程序
本章目标:装好 Python 与编辑器,认识交互式与脚本式两种运行方式,会写并运行第一个程序。
1.1 安装 Python:这一步别漏勾选
去官网 python.org 下载安装包。安装界面出现时,务必勾选最下方的 "Add Python to PATH",否则之后在命令行输入 python 会提示"找不到命令"。装完在命令行输入下面两条命令验证:
python --version
python -V
能显示出版本号(例如 Python 3.12.x)就说明装好了。版本号只要是大版本 3 就没问题。
1.2 选择编辑器:Thonny 还是 VS Code
写代码需要一个"记事本加强版"。推荐两个:
- Thonny:专门为初学者设计,界面简单,还带一个"看变量"面板,能直观看到每个变量当前的值——非常适合第一学期。
- VS Code:装 Python 插件后更接近专业开发环境,语法高亮、自动补全更强,适合适应打字后再换。
两门都可以,重要的是学会保存文件:文件后缀一定是 .py,文件名用英文(比如 hello.py),存放路径别带中文,否则容易出现编码问题。
1.3 两种运行方式:交互式与脚本式
Python 有"一问一答"和"整本执行"两种模式,第一节课两种都要体验:
- 交互式:在命令行敲 python 回车,进入 >>> 提示符,输一行立即执行一行。适合验证一个表达式。
- 脚本式:把代码存成 .py 文件,整体运行。真正的程序都用这种方式。
>>> print("你好")
你好
>>> 3 + 5
8
>>>
1.4 第一个程序:print 输出
print() 是"把内容显示在屏幕上"的指令,和 Scratch 里的「说」积木一一对应。括号里放什么就打印什么,还可以一次打印多个,中间用逗号隔开:
# 我的第一个程序
print("Hello, Python!")
print("我是陈老师的学生")
print("姓名:", "小明", "年级:", 5)
Hello, Python!
我是陈老师的学生
姓名: 小明 年级: 5
1.5 字符串、引号与注释
被引号包起来的内容叫字符串(英文叫 string,简称 str),单引号双引号都可以,但必须是英文引号。中文字符可以直接写,只要用的是英文引号包住。字符串里想显示引号本身,可以用反斜杠转义:
print('单引号也可以')
print("他说:\"你好\"")
print("换行\n下一行")
print('''多行
文本用三个引号''')
单引号也可以
他说:"你好"
换行
下一行
多行
文本用三个引号
\n 表示换行,\" 表示引号本身,这类带反斜杠的写法叫转义字符。三个引号 '''...''' 可以包住多行文本。
注释是写给"看代码的人"看的说明,以 # 开头,程序运行时完全忽略它。给代码写注释是好习惯,帮助自己回头看懂逻辑。
1.6 认识缩进
Python 用缩进表示代码的层级关系(这一点和 Scratch 用"嵌进去"表示层级完全一样)。同一层代码缩进必须一致,通常用 4 个空格。缩进错误时 Python 会直接报 IndentationError。
print("第一行")
print("缩进不一致,这里会报错")
基础练习:用三行 print 输出你的姓名、年级和爱好。
挑战练习:用 \n 和转义字符,在一行 print 里输出三行自我介绍。提示:把 \n 写进字符串中间即可。
↑ 目录第 2 章 变量与数据类型:盒子、数字与文字
本章目标:理解"变量是装数据的盒子",掌握四种基本类型,会用 input() 读取输入并做运算。
2.1 变量:给数据起个名字
变量就是"给数据起个名字存起来",可以想象成贴了标签的盒子:
┌─────────────┐
│ 年龄 │ ← 标签(变量名)
├─────────────┤
│ 10 │ ← 存的值
└─────────────┘
用等号 = 把值放进盒子(这叫赋值)。盒子里的值随时可以换。变量名用字母、数字、下划线组成,但不能以数字开头,也不能用 Python 的保留字(如 if、for)。
age = 10 # 把 10 放进"age"盒子
name = "小明" # 把字符串放进"name"盒子
age = age + 1 # 先取出 age 的值 +1,再放回去
print(name, "今年", age, "岁")
小明 今年 11 岁
2.2 四种基本类型:int / float / str / bool
盒子里的数据有类型之分,Python 里最基本的四种:
# 整数 int:没有小数点
a = 100
# 小数 float:带小数点
b = 3.14
# 字符串 str:被引号包住
c = "Hello"
# 布尔 bool:只有 True / False
d = True
print(type(a)) # <class 'int'>
print(type(b)) # <class 'float'>
print(type(c)) # <class 'str'>
print(type(d)) # <class 'bool'>
type() 能查看变量的类型。为什么类型重要?因为不同类型能做的操作不同:数字能加减乘除,字符串能拼接,布尔能参与条件判断。
2.3 算术运算符:不只是加减乘除
除了常见的 + - * /,Python 还有三个竞赛里特别常用的运算符:
print(7 + 2) # 加 → 9
print(7 - 2) # 减 → 5
print(7 * 2) # 乘 → 14
print(7 / 2) # 除 → 3.5
print(7 // 2) # 整除取商 → 3
print(7 % 2) # 取余数 → 1
print(2 ** 3) # 乘方 → 8
9
5
14
3.5
3
1
8
2.4 input():让程序听用户的话
input() 会在屏幕上显示提示文字,等待用户输入,回车后把输入的内容作为字符串返回。注意:无论输入的是不是数字,input() 返回的都是字符串,想做数学运算必须先转换。
name = input("你的名字:")
age = input("你的年龄:")
print(name, type(age)) # age 是字符串
# 想当数字用,必须 int() 转换
age2 = int(input("再输一次年龄:"))
print("10年后", age2 + 10, "岁")
你的名字:小明
你的年龄:10
小明 <class 'str'>
再输一次年龄:10
10年后 20 岁
类型转换还有 float()(转小数)、str()(转字符串)、int()(转整数)。
2.5 字符串拼接与 f-string
字符串可以用 + 拼接,但不能直接和数字相加。想把数字拼进字符串,最方便的是 f-string:在字符串前加 f,用花括号 {} 装变量。
name = "小红"
score = 98
# 错误写法:字符串 + 数字
# print("分数:" + score) # 会报错
# 正确写法 1:str() 转换
print("分数:" + str(score))
# 正确写法 2:f-string(推荐)
print(f"{name} 考了 {score} 分")
print(f"{name} 明年 {score + 1} 分") # 花括号里还能写算式
分数:98
小红 考了 98 分
小红 明年 99 分
基础练习:写一个"年龄计算器":输入名字和年龄,输出"XX 10 年后 XX 岁"。
挑战练习:输入一个两位数,用 // 和 % 拆出十位和个位,再输出它们的和。提示:n // 10 是十位,n % 10 是个位。
↑ 目录第 3 章 条件判断与循环:让程序学会思考
本章目标:掌握 if/elif/else 分支与 for/while 循环,会用 break、continue 控制流程,完成猜数字、累加求和等经典练习。
3.1 比较运算符:程序判断的依据
判断的前提是比较。Python 的比较运算符如下,比较的结果是布尔值 True 或 False:
print(10 > 5) # True 大于
print(10 < 5) # False 小于
print(10 >= 10) # True 大于等于
print(10 == 10) # True 相等(注意是两个等号!)
print(10 != 5) # True 不相等
3.2 if / elif / else:让程序做选择
if 满足条件执行一段,elif 是"否则如果",else 是"都不满足时兜底"。程序从上往下,命中第一个满足的条件就执行,后面不再看:
score = int(input("你的分数:"))
if score >= 90:
print("优秀")
elif score >= 80:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")
你的分数:75
及格
注意"命中第一个就停":输入 95 时,第一个条件 score >= 90 满足,直接输出"优秀",后面的 elif 不再执行。这就是为什么条件要从高到低排列。
3.3 逻辑运算符 and / or / not
一个条件不够用时,用逻辑运算符合并:and(并且,两边都真才真)、or(或者,一边真就真)、not(取反)。
age = 12
height = 145
# and:两个条件都满足
if age >= 10 and height >= 140:
print("可以玩过山车")
# or:满足其中一个即可
if age < 8 or height < 120:
print("需要大人陪同")
# not:条件不满足时
if not (age < 6):
print("已满 6 岁")
3.4 for 循环:重复"知道次数"的事
for 循环对应 Scratch 的「重复 N 次」。核心是 range():range(1, 101) 生成 1 到 100(含头不含尾,包左不包右)。
# 打印 0~4
for i in range(5):
print(i, end=" ") # end=" " 表示不换行,用空格分隔
print()
# 打印 1~10
for i in range(1, 11):
print(i, end=" ")
print()
# 从 10 数到 1,步长 -1
for i in range(10, 0, -1):
print(i, end=" ")
0 1 2 3 4
1 2 3 4 5 6 7 8 9 10
10 9 8 7 6 5 4 3 2 1
经典练习:累加求和。可以用一个变量当"累加器",循环里每次把当前数加进去:
total = 0 # 累加器,从 0 开始
for i in range(1, 101): # i 取 1,2,...,100
total = total + i # 累加
print("1+2+...+100 =", total)
1+2+...+100 = 5050
3.5 while 循环:直到条件不成立
while 对应 Scratch 的「重复执行直到」。只要条件成立就一直循环,所以循环体里一定要改变条件涉及的变量,否则会死循环。
n = 1
while n <= 5: # 条件成立就一直循环
print(n, end=" ")
n = n + 1 # 关键:改变 n,否则死循环
print("结束")
1 2 3 4 5 结束
3.6 break 与 continue:控制循环的节奏
break 立刻跳出整个循环;continue 跳过本次剩余代码,进入下一轮。
# break:i 到 5 就停
for i in range(1, 11):
if i == 5:
break
print(i, end=" ")
print() # → 1 2 3 4
# continue:跳过 3,其余照常
for i in range(1, 6):
if i == 3:
continue
print(i, end=" ")
print() # → 1 2 4 5
1 2 3 4
1 2 4 5
3.7 循环嵌套:循环套循环
循环里面再写循环,外层每走一步,内层完整跑一遍。打印九九乘法表是经典练习:
for i in range(1, 10): # 外层:行
for j in range(1, i + 1): # 内层:列,随行增加
print(f"{j}x{i}={i*j}", end=" ")
print() # 换行
1x1=1
1x2=2 2x2=4
1x3=3 2x3=6 3x3=9
1x4=4 2x4=8 3x4=12 4x4=16
1x5=5 2x5=10 3x5=15 4x5=20 5x5=25
理解嵌套的关键:内层循环整体是外层循环的一条语句,外层每循环一次,内层从头到尾执行一遍。
基础练习:用循环找出 1 到 100 之间所有能被 3 整除的数并打印。
挑战练习:用 while 和 break 做"猜数字":程序想一个 1~100 的数,用户一直猜,猜对就退出。提示:random.randint(1, 100) 生成随机数,while True + break 实现"猜对退出"。
↑ 目录第 4 章 字符串与列表:批量处理数据
本章目标:掌握字符串的索引、切片与常用方法,学会列表的增删改查与遍历,初步接触"批量处理数据"。
4.1 字符串的索引与切片
字符串是一串字符,可以像排队的人一样给每个位置编号。编号从 0 开始:
字符: H e l l o
编号: 0 1 2 3 4
负数: -5 -4 -3 -2 -1
s = "Hello Python"
print(s[0]) # 第 1 个字符 → H
print(s[6]) # 第 7 个字符 → P
print(s[-1]) # 最后 1 个 → n
print(s[0:5]) # 切片 0~4 → Hello
print(s[6:]) # 从 6 到末尾 → Python
print(s[::-1]) # 反转 → nohtyP olleH
H
P
n
Hello
Python
nohtyP olleH
切片 s[开始:结束] 和 range 一样含头不含尾。s[::-1] 中第三个参数 -1 表示步长为负(从右往左),实现反转。
4.2 字符串的常用方法
字符串自带很多"功能函数"(方法)。注意:字符串是不可变的,这些方法都返回新字符串,不改原字符串。
s = " Hello Python "
print(s.strip()) # 去掉首尾空格 → "Hello Python"
print(s.upper()) # 全部大写
print(s.lower()) # 全部小写
print(s.split(" ")) # 按空格拆成列表
print(s.replace("Python", "世界"))
print(s.count("o")) # 统计 o 出现次数
print(s.startswith(" ")) # 是否以...开头 → True
Hello Python
HELLO PYTHON
hello python
['', '', 'Hello', 'Python', '', '']
Hello 世界
3
True
4.3 列表:能装多个数据的盒子
列表(list)用方括号 [] 包住一串数据,中间逗号分隔。它像一个带编号的抽屉柜,每个抽屉一个数据,编号从 0 开始:
[ 88 | 92 | 75 | 96 ]
0 1 2 3
scores = [88, 92, 75, 96]
scores.append(100) # 末尾加 → [88,92,75,96,100]
scores.insert(0, 60) # 插到开头 → [60,88,...]
scores.remove(75) # 删掉值 75
scores.pop() # 删掉最后一个
scores[0] = 100 # 修改第 1 个
print(scores) # → [100, 88, 92, 96]
print(len(scores)) # 长度 → 4
print(scores.index(92)) # 92 在第几个 → 2
[100, 88, 92, 96]
4
2
4.4 遍历列表与统计函数
用 for 遍历列表,逐个处理每个元素。Python 还提供一批统计函数:
scores = [88, 92, 75, 96]
for s in scores:
print("成绩", s)
print("最高分", max(scores))
print("最低分", min(scores))
print("平均分", sum(scores) / len(scores))
# 排序:sorted() 返回新列表
print(sorted(scores))
print(sorted(scores, reverse=True))
成绩 88
成绩 92
成绩 75
成绩 96
最高分 96
最低分 75
平均分 87.75
[75, 88, 92, 96]
[96, 92, 88, 75]
4.5 列表推导式:一行生成列表
想快速生成一个列表,可以用列表推导式,它把"循环 + 收集"压缩成一行(进阶内容,学有余力的孩子看):
# 1~10 的平方
squares = [i * i for i in range(1, 11)]
print(squares)
# 只保留偶数
evens = [i for i in range(1, 21) if i % 2 == 0]
print(evens)
# 对列表每个元素处理
nums = [1, 2, 3]
doubled = [x * 2 for x in nums]
print(doubled)
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
[2, 4, 6, 8, 10, 12, 14, 16, 18, 20]
[2, 4, 6]
基础练习:输入 5 个同学的身高存入列表,输出最高、最矮和平均身高。
挑战练习:输入一句话,统计每个字符出现的次数。提示:用 for 遍历字符串,用字典 {} 记录"字符 → 次数",遇到新字符初始化成 1,遇到已有的加 1。
↑ 目录第 5 章 函数与模块:把程序拆成积木
本章目标:学会用 def 定义函数、传参、返回值,理解"函数就是自己的积木",并会用 import 引入模块。
5.1 为什么需要函数
程序写到一定规模,会发现"同一段逻辑要反复用"。比如算面积、掷骰子、判断闰年。如果每次都要重抄一遍,代码又长又容易出错。函数把一段代码打包起来起个名字,想用就调用一次——这正是 Scratch 里「自制积木」的对应物。
5.2 定义与调用:def / return
用 def 定义函数,函数体必须缩进。return 把结果"交还"给调用方:
def greet():
print("你好!")
print("欢迎学习 Python")
def add(a, b): # a、b 是参数
return a + b # 返回值
greet() # 调用无参函数
print(add(3, 5)) # 调用并打印返回值
result = add(10, 20) # 把返回值存进变量
print(result)
你好!
欢迎学习 Python
8
30
5.3 参数:函数的输入
参数让同一个函数能处理不同数据。还可以给参数设置默认值,调用时不传就用默认值:
def roll(dice=6): # 默认 6 面骰子
import random
return random.randint(1, dice)
print(roll()) # 6 面 → 1~6
print(roll(20)) # 20 面 → 1~20
def repeat_word(word, times=3):
return word * times
print(repeat_word("哈")) # 哈哈
print(repeat_word("啊", 5)) # 啊啊啊啊啊
3
17
哈哈
啊啊啊啊啊
"哈" * 3 会把字符串重复 3 遍,这是字符串运算里的小技巧。
5.4 返回值与 None
没有 return 的函数返回 None(表示"什么都没有")。print 和 return 是两回事:print 只是显示,return 才把值交还给调用方。
def show(x):
print("我打印了", x) # 只是显示
def calc(x):
return x * 2 # 真正返回
a = show(5)
b = calc(5)
print("show 返回:", a) # None
print("calc 返回:", b) # 10
我打印了 5
show 返回: None
calc 返回: 10
5.5 import:用别人写好的模块
模块就是"别人打包好的函数库",用 import 引入。最常用的有 random(随机)、math(数学)、time(时间)。
import random
import math
print(random.randint(1, 100)) # 1~100 随机整数
print(random.random()) # 0~1 之间的小数
print(random.choice(["石头", "剪刀", "布"])) # 随机取一个
print(math.sqrt(81)) # 平方根 → 9.0
print(math.pi) # 圆周率
print(math.floor(3.7)) # 向下取整 → 3
print(math.ceil(3.2)) # 向上取整 → 4
57
0.482937
剪刀
9.0
3.141592653589793
3
4
5.6 实战:闰年判断函数
闰年规则:被 4 整除但不能被 100 整除,或者被 400 整除。把它写成一个函数,逻辑很清晰:
def is_leap(year):
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
return True
else:
return False
for y in [2000, 1900, 2024, 2025]:
print(y, "闰年?" , is_leap(y))
2000 闰年? True
1900 闰年? False
2024 闰年? True
2025 闰年? False
基础练习:写一个求平均数的函数 average(lst),传入成绩列表返回平均值。
挑战练习:写一个"抽奖"程序:全班名单放进列表,用函数随机抽出一名同学。提示:random.choice(名单) 可以直接随机取一个。
↑ 目录第 6 章 海龟画图与小项目实战
本章目标:用 turtle 库画图巩固语法,综合所学完成两个小项目,走通"设计 → 编码 → 测试"全流程。
本章是实战结课章,以综合项目(计算器、猜数字、海龟组合画等)代替常规练习——把前五章语法放进真实项目里综合运用,做完一个就收获一个能展示的作品。
6.1 turtle 基础:让海龟在屏幕上画画
turtle 是 Python 自带的画图库:屏幕上一只"小海龟",你指挥它前进、转向、抬笔落笔,它爬过的轨迹就是画。这比纯文字输出更有成就感,也是把循环和角度用看得见的方式练一遍。
import turtle
t = turtle.Turtle()
t.speed(5) # 速度 1~10
t.color("blue") # 画笔颜色
t.forward(100) # 前进 100 像素
t.right(90) # 右转 90 度
t.forward(100)
t.penup() # 抬笔(移动不留痕迹)
t.goto(-150, 0) # 直接飞到指定坐标
t.pendown() # 落笔
t.color("red")
t.circle(50) # 画圆,半径 50
turtle.done() # 保持窗口不关闭
6.2 用循环画多边形
画一个正方形要 4 条边、每次转 90 度。想画任意多边形?正 n 边形每次转 360/n 度,用 for 循环一步到位:
import turtle
t = turtle.Turtle()
t.speed(6)
n = 6 # 六边形
length = 80
angle = 360 / n # 每次转的角度
for i in range(n):
t.forward(length)
t.right(angle)
# 画五角星:转 144 度
t.penup()
t.goto(-150, 0)
t.pendown()
for i in range(5):
t.forward(120)
t.right(144)
turtle.done()
6.3 颜色与填充
用 begin_fill() 和 end_fill() 可以给图形填色,组合图形就能画出彩色的图案:
import turtle
t = turtle.Turtle()
t.speed(8)
colors = ["red", "orange", "yellow", "green", "blue", "purple"]
t.penup()
t.goto(-150, 0)
t.pendown()
# 彩色圆环
for c in colors:
t.color(c)
t.begin_fill()
t.circle(30)
t.end_fill()
t.penup()
t.forward(55)
t.pendown()
turtle.done()
6.4 综合项目一:猜数字游戏
把随机数、while、分支、break、计数器全用上。先写设计步骤再写代码:
import random
target = random.randint(1, 100) # 电脑想的数
count = 0 # 猜的次数
print("我想好了一个 1~100 的数,来猜吧!")
while True:
guess = int(input("你猜:"))
count = count + 1
if guess > target:
print("大了,再小一点")
elif guess < target:
print("小了,再大一点")
else:
print(f"恭喜!你用了 {count} 次猜对")
break
我想好了一个 1~100 的数,来猜吧!
你猜:50
小了,再大一点
你猜:75
大了,再小一点
你猜:63
恭喜!你用了 3 次猜对
这个项目能玩的点:① 统计次数看谁猜得快;② 加一个"超过 10 次没猜对就失败"的判定;③ 提示"再猜大一点"而不是"小了",锻炼逻辑表达。
6.5 综合项目二:简易计算器
把输入、类型转换、分支、循环、错误处理全串起来。要求:能连续算多次,输入 0 退出,除数为 0 要有提示:
print("简易计算器,输入 0 退出")
while True:
line = input("算式(如 3 + 5):")
if line == "0":
print("再见!")
break
parts = line.split() # "3 + 5" → ["3", "+", "5"]
if len(parts) != 3:
print("格式不对,用空格分隔,如:3 + 5")
continue
a = float(parts[0])
op = parts[1]
b = float(parts[2])
if op == "+":
print("结果:", a + b)
elif op == "-":
print("结果:", a - b)
elif op == "*":
print("结果:", a * b)
elif op == "/":
if b == 0:
print("除数不能为 0!")
else:
print("结果:", a / b)
else:
print("不认识的运算符")
简易计算器,输入 0 退出
算式(如 3 + 5):3 + 5
结果: 8.0
算式(如 3 + 5):10 / 0
除数不能为 0!
算式(如 3 + 5):0
再见!
这个项目教给孩子"防御式编程":不要假设用户一定按规矩输入,要对"格式不对""除数为 0"这些情况做处理。这是区分"会写代码"和"会写好代码"的分水岭。
6.6 综合项目三:海龟组合画
把本章学到的循环、颜色、填充综合起来,画一个组合图形(例如太阳和它的光芒):
import turtle
t = turtle.Turtle()
t.speed(8)
# 太阳本体
t.color("orange", "yellow")
t.begin_fill()
t.circle(60)
t.end_fill()
# 12 条光芒,绕一圈
for i in range(12):
t.penup()
t.goto(0, 0)
t.setheading(i * 30) # 每次转 30 度
t.forward(75)
t.pendown()
t.forward(25)
turtle.done()
学制安排
班型 小班教学(8~12 人)
周期 16 次课 / 学期
频次 每周 1 次
时长 每次 90 分钟
结课 完成 2 个完整小项目
16 次课与 6 章的对应安排如下,每节课都能运行一个程序:
第1周 第1章 装环境(PATH/编辑器/交互式 vs 脚本式)
第2周 第1章 第一个程序(print/字符串/注释/缩进)
第3周 第2章 变量与类型(盒子模型/type/int/float/str/bool)
第4周 第2章 运算与输入(运算符/input/类型转换/f-string)
第5周 第3章 分支(比较运算符/if/elif/else/逻辑运算)
第6周 第3章 for 循环(range/累加求和/打印序列)
第7周 第3章 while 循环(更新变量/break/continue)
第8周 第3章 循环嵌套(九九乘法表/找规律)
第9周 第4章 字符串(索引/切片/常用方法)
第10周 第4章 列表(增删改查/遍历/统计函数)
第11周 第4章 进阶(列表推导式/字典初体验)
第12周 第5章 函数(def/参数/返回值/None)
第13周 第5章 模块(random/math/import 实战)
第14周 第6章 海龟画图(基础命令/多边形/填充)
第15周 第6章 综合项目(猜数字 + 简易计算器打磨)
第16周 期末展示会(作品讲解 + 现场运行演示)
Python 与 Scratch 对照表
学过 Scratch 的孩子,可以对照下面这张表快速理解:积木是图形化的代码,代码是文字化的积木。每学一个新语法,都先问一句"这对应 Scratch 的哪个积木"。
Scratch 积木 Python 代码
──────────────────────────────────────────────────────
当绿旗被点击 程序从上往下执行
说 [你好] (2) 秒 print("你好")
将 [年龄] 设为 (10) age = 10
将 [年龄] 增加 (1) age += 1
重复 (10) 次 for i in range(10):
重复执行直到 <猜中> while True: … break
如果 <得分 > 60> 那么… 否则… if 得分 > 60: … else: …
随机数 1 到 100 random.randint(1, 100)
建立一个变量 [得分] score = 0
我的积木(自制积木) def 函数名():
将 [s] 加入 [名单 v] list.append(s)
等待 (1) 秒 time.sleep(1)
常见问题
- 没学过 Scratch 能直接学吗? 可以。只要会基本键盘操作就能跟上,前两章会把基础概念完整讲一遍。
- Python 和 C++ 哪个更适合竞赛? 竞赛主语言是 C++。走这条路一般有两种选择:① 从 Python 过渡(适合低年级、零基础,先把"手敲代码、调试、逻辑"练扎实,再转 C++);② 直接学 C++(适合已有 Scratch 基础、年级较高、确定走竞赛的孩子)。两者都能到终点,差别只是节奏。拿不准就联系我做次免费测评。
- 学完本课程转 C++ 会快吗? 会快很多。Python 阶段建立起来的变量、循环、分支、函数、调试习惯在 C++ 里全部复用,转语言通常只需要适应语法,2~4 周即可上手。
- 孩子需要每天练习吗? 建议每周固定 2~3 次、每次 30 分钟。课后练习发送到邮箱 lackychen@foxmail.com,老师逐题批改并给出改进建议。
- 代码报错看不懂怎么办? 上课会教"读报错三步法":先看报错行号、再读最后一行错误类型、回到代码对应行检查。这是独立调试的基本功。
- 学完本课程能做什么? 能独立编写计算器、猜数字、海龟画图等完整程序,并具备了转入竞赛基础课程的资格。
