第 01 章 · 一年级(小学三年级) 上学期

认识Python,做出第一个程序

零基础起步。从打印第一个字符到做出完整的文字冒险游戏,建立对编程最直观的兴趣。

12 课时 20 个知识点 4 大易错点 3 档分层作业
一年级上一年级下二年级上二年级下三年级上三年级下四年级上四年级下五年级上五年级下六年级上六年级下七年级上七年级下
📚
配 套 精 讲《小学三年级上》12 课精讲课件
依据正式教案逐课扩写,每课 2 小时完整教学闭环:120 分钟时间轴 → 情景故事 → 4 条生活类比 → 核心口诀 → 示范代码 + 运行结果 → 易错卡 → 分层课堂练习 → 闯关小测 → 课后作业 → 小结预告。每课都配好「照着讲」的全部素材,老师打开即可上满一堂课。
💡 不会用?先看 《从入门到上课 · 图文教程》(↗ 点击会在新标签打开,看完关掉标签即可回到本页)
进入整册精讲课件 →
01

情景导航

用故事和生活类比打开这学期的大门,先「知其所以然」再学语法。

小强第一次坐在电脑前想写个「会说话」的程序,可是面对黑乎乎的窗口不知道从哪开始。老师只教了他一个单词 print,当屏幕上跳出「你好,世界」的那一刻,小强第一次感觉到:是我在指挥电脑干活!这个学期,你将和小强一样从零开始,一路做出计算器、猜数字游戏,直到属于自己的文字冒险游戏。

💯生活类比:把新知识挂在旧经验上
🗣️

print = 嘴巴

程序说什么,屏幕就显示什么,是最直接的「让电脑开口」的方式。

输出语句
📦

变量 = 贴标签的盒子

盒子里装东西,标签写名字;东西可以换,标签不变,随取随用。

数据的名字
🚦

if = 路口红绿灯

条件成立走这边,不成立走那边,程序从此有了「大脑」。

条件分支
🏃

for = 跑操场

一圈一圈重复跑,跑满圈数就停下——重复的事情交给循环。

重复执行
核 心 口 诀print输出会说话,变量盒子存数据;
if判断分岔路,for循环跑圈数;
随机random来凑趣,文字冒险任你行!
02

知识探究

认识Python,做出第一个程序 —— 共 12 课时,全部知识点一网打尽。

🖨️输入输出与变量(3 课时)
第1课编程初体验
🎯 趣味项目:打印你的名字和爱好📚 教学目标:掌握print输出、字符串,在项目实战中巩固运用
print输出字符串
Python输出第一句话
print("你好,世界!")
print("我是小强,我喜欢编程")
print(3 + 4 * 5)
运 行 结 果
你好,世界!
我是小强,我喜欢编程
23
📚 本课精讲课件(2 小时完整闭环)→
第2课会计算的计算器
🎯 趣味项目:做一个加减乘除计算器📚 教学目标:掌握变量、数字运算,在项目实战中巩固运用
变量数字运算
Python变量与四则运算
a = 3
b = 4
total = a + b
print("两数之和:", total)
print("两数之积:", a * b)
运 行 结 果
两数之和: 7
两数之积: 12
📚 本课精讲课件(2 小时完整闭环)→
第3课输入与互动
🎯 趣味项目:猜数字游戏(简单版)📚 教学目标:掌握input输入、类型转换,在项目实战中巩固运用
input输入类型转换
Python输入与类型转换
name = input("你叫什么名字?")
age = int(input("你几岁了?"))
print(name, "明年就", age + 1, "岁啦!")
运 行 结 果
你叫什么名字?小强
你几岁了?10
小强 明年就 11 岁啦!
📚 本课精讲课件(2 小时完整闭环)→
🚦分支与逻辑判断(3 课时)
第4课做选择
🎯 趣味项目:成绩等级判断器📚 教学目标:掌握if条件判断,在项目实战中巩固运用
if条件判断
Pythonif 条件判断
score = int(input("请输入成绩:"))
if score >= 90:
    print("优秀!")
elif score >= 60:
    print("及格,继续加油")
else:
    print("要努力补一补哦")
运 行 结 果
请输入成绩:85
及格,继续加油
📚 本课精讲课件(2 小时完整闭环)→
第5课多分支选择
🎯 趣味项目:石头剪刀布游戏📚 教学目标:掌握if-elif-else,在项目实战中巩固运用
if-elif-else
Python多分支:石头剪刀布(核心逻辑)
import random
computer = random.choice(["石头", "剪刀", "布"])
player = input("请出拳:")
print("电脑出了:", computer)
if player == computer:
    print("平局!")
elif (player, computer) in [("石头","剪刀"),("剪刀","布"),("布","石头")]:
    print("你赢了!")
else:
    print("电脑赢了!")
运 行 结 果
请出拳:石头
电脑出了: 剪刀
你赢了!
📚 本课精讲课件(2 小时完整闭环)→
第9课逻辑运算
🎯 趣味项目:闰年判断器📚 教学目标:掌握and、or、not逻辑运算,在项目实战中巩固运用
andornot逻辑运算
Python逻辑运算:闰年判断
year = int(input("年份:"))
if (year % 4 == 0 and year % 100 != 0) or year % 400 == 0:
    print(year, "是闰年")
else:
    print(year, "是平年")
运 行 结 果
年份:2024
2024 是闰年
📚 本课精讲课件(2 小时完整闭环)→
🏃循环结构(3 课时)
第6课重复的力量
🎯 趣味项目:打印九九乘法表📚 教学目标:掌握for循环、range,在项目实战中巩固运用
for循环range
Pythonfor 循环:九九乘法表
for i in range(1, 10):
    for j in range(1, i + 1):
        print(f"{j}x{i}={i*j}", end="\t")
    print()  # 换行
运 行 结 果
1x1=1
1x2=2  2x2=4
1x3=3  2x3=6  3x3=9
…(共 9 行)
📚 本课精讲课件(2 小时完整闭环)→
第7课循环进阶
🎯 趣味项目:猜数字游戏(完整版)📚 教学目标:掌握while循环、break,在项目实战中巩固运用
while循环break
Pythonwhile + break:猜数字(核心逻辑)
import random
answer = random.randint(1, 100)
while True:
    guess = int(input("猜一个 1~100 的数:"))
    if guess == answer:
        print("猜对了!答案是", answer)
        break            # 跳出循环
    elif guess > answer:
        print("大了,再小一点")
    else:
        print("小了,再大一点")
运 行 结 果
猜一个 1~100 的数:50
大了,再小一点
猜一个 1~100 的数:25
猜对了!答案是 25
📚 本课精讲课件(2 小时完整闭环)→
第8课嵌套循环
🎯 趣味项目:画一个圣诞树📚 教学目标:掌握嵌套循环,在项目实战中巩固运用
嵌套循环
Python嵌套循环:星星圣诞树
n = 5
for i in range(1, n + 1):        # 每一层
    print(" " * (n - i), end="")  # 前面留空
    print("*" * (2 * i - 1))      # 星星逐层加宽
print(" " * (n - 1) + "|")        # 树干
运 行 结 果
    *
   ***
  *****
 *******
*********
    |
📚 本课精讲课件(2 小时完整闭环)→
🎲模块与字符串(2 课时)
第10课随机数
🎯 趣味项目:骰子模拟器📚 教学目标:掌握random模块,在项目实战中巩固运用
random模块
Pythonrandom:掷骰子
import random
dice = random.randint(1, 6)     # 掷一个骰子
print("掷出了:", dice)
cards = ["A", "K", "Q", "J"]
random.shuffle(cards)            # 洗牌
print("洗牌后:", cards)
运 行 结 果
掷出了: 5
洗牌后: ['Q', 'A', 'J', 'K']
📚 本课精讲课件(2 小时完整闭环)→
第11课字符串魔法
🎯 趣味项目:密码生成器📚 教学目标:掌握字符串操作、切片,在项目实战中巩固运用
字符串操作切片
Python字符串与切片:密码生成器
import random, string
# 从字母和数字中随机挑 8 个字符拼成密码
chars = string.ascii_letters + string.digits
password = "".join(random.choice(chars) for _ in range(8))
print("生成的密码:", password)
print("密码长度:", len(password))
运 行 结 果
生成的密码: aK3xP9mQ
密码长度: 8
📚 本课精讲课件(2 小时完整闭环)→
🏆综合实战(1 课时)
🏆 期末项目期末项目
🎯 趣味项目:文字冒险游戏📚 教学目标:掌握综合运用,在项目实战中巩固运用
综合运用
Python期末项目:文字冒险游戏骨架
# 文字冒险游戏:数据驱动的剧情引擎
scenes = {
    "start": ("你站在山洞口,里面隐约有光。",
              {"1": "进洞", "2": "离开"}),
    "cave":  ("火把照亮了墙壁上的古老壁画。",
              {"1": "触摸壁画", "2": "后退"}),
}
cur = "start"
while True:
    text, opts = scenes[cur]
    print(text, "可选:", opts, sep="\n")
    choice = input("你的选择:")
    cur = "cave" if cur == "start" and choice == "1" else "end"
    if cur == "end":
        print("冒险结束!"); break
运 行 结 果
你站在山洞口,里面隐约有光。
可选:{'1': '进洞', '2': '离开'}
你的选择:1
火把照亮了墙壁上的古老壁画。
……
📚 本课精讲课件(2 小时完整闭环)→
03

实践应用

每个知识点都要落到能跑、能玩、能演示的作品上。

🏆 期末项目文字冒险游戏

期末项目是整学期知识点的综合检验场:综合运用。学生将独立完成需求拆解 → 功能实现 → 调试打磨 → 上台演示的完整闭环。

💡 验收标准:功能完整可运行、代码结构清晰、能给同学讲明白实现原理。
📊本学期课时一览表(可打印)
课次主题趣味项目知识点
1编程初体验打印你的名字和爱好print输出、字符串
2会计算的计算器做一个加减乘除计算器变量、数字运算
3输入与互动猜数字游戏(简单版)input输入、类型转换
4做选择成绩等级判断器if条件判断
5多分支选择石头剪刀布游戏if-elif-else
6重复的力量打印九九乘法表for循环、range
7循环进阶猜数字游戏(完整版)while循环、break
8嵌套循环画一个圣诞树嵌套循环
9逻辑运算闰年判断器and/or/not逻辑运算
10随机数骰子模拟器random模块
11字符串魔法密码生成器字符串操作、切片
12期末项目文字冒险游戏综合运用
04

总结提升

把一学期的知识点串成体系,看清来路与去向。

📌知识点体系图
🖨️ 输入输出与变量
print输出字符串变量数字运算input输入类型转换
🚦 分支与逻辑判断
if条件判断if-elif-elseandornot逻辑运算
🏃 循环结构
for循环rangewhile循环break嵌套循环
🎲 模块与字符串
random模块字符串操作切片
🏆 综合实战
综合运用
🔄承上启下

下一章 ▶:一年级 下学期 · 数据集合与函数封装

💪 学完这学期,你将获得

零基础起步。从打印第一个字符到做出完整的文字冒险游戏,建立对编程最直观的兴趣。

结业时你将带走:3 个可玩游戏作品 + 一套算法思维 + NOAI 初赛参赛能力。

05

学习检测

避开高频易错点,再用速查表把语法焊进肌肉记忆。

易错点 1

忘记冒号

✗ 错误写法
if x > 5
    print("大")
✓ 正确写法
if x > 5:
    print("大")
💡 为什么:if / for / while 语句的结尾必须加英文冒号,这是 Python 的「呼吸」规则。
易错点 2

= 和 == 混用

✗ 错误写法
if x = 5:
    print("五")
✓ 正确写法
if x == 5:
    print("五")
💡 为什么:一个等号是赋值(把 5 装进盒子),两个等号是比较(盒子里是不是 5)。
易错点 3

input 直接做运算

✗ 错误写法
age = input("年龄:")
print(age + 1)  # 报错!
✓ 正确写法
age = int(input("年龄:"))
print(age + 1)
💡 为什么:input 拿到的永远是字符串,运算前必须用 int() / float() 转换成数字。
易错点 4

缩进忽长忽短

✗ 错误写法
if x > 5:
  print("a")
    print("b")  # 缩进错
✓ 正确写法
if x > 5:
    print("a")
    print("b")
💡 为什么:同一层级的代码缩进必须完全一致,推荐统一用 4 个空格。
📋语法速查表
功能写法一句话理解
输出print("你好")在屏幕上显示一段文字或一个值
赋值x = 5把 5 装进名字叫 x 的盒子
输入name = input("名字:")等用户敲一行字,结果是字符串
类型转换int("123") / float("1.5")字符串转数字,运算前必做
分支if … elif … else:多选一,从上往下依次判断
计数循环for i in range(10):重复 10 次,i 依次是 0~9
条件循环while 条件:条件成立就一直重复,配 break 跳出
随机数import random random.randint(1, 6)掷一个 1~6 的骰子
分 层 作 业

练习作业

按 A / B / C 三档难度自主选择:保底完成 A 组,学有余力挑战 B、C 组。

A组·基础任选其一深入完成
  1. 用 print 打印 3 行自我介绍(姓名、年级、爱好)。
  2. 输入两个数,输出较大的那个(用 if 判断)。
  3. 用 for 循环打印 1~100 中所有 3 的倍数。
B组·提高任选其一深入完成
  1. 升级猜数字游戏:猜错时提示「大了 / 小了」,最多 7 次机会。
  2. 打印由 * 组成的直角三角形(行数由用户输入)。
  3. 设计一个 3 道题的问答小程序,答完统计总分。
C组·挑战任选其一深入完成
  1. 文字冒险游戏第一幕:至少 2 个选择分支,每个分支有不同结局。
  2. 九九乘法表对齐版:用字符串格式化让每列对齐。
  3. 密码生成器:随机生成 4 位数字 + 字母混合密码。