🐍
💡
🚀
🎯
🐍 Python 入门方案 🗺️

Python 学习大冒险

这是一份专门为小学生设计的 Python 学习路线图。
跟着 7 个阶段一步一步走,从零开始,你也能写出厉害的代码!

🎯 学好 Python 的四大秘诀
✍️ 多敲代码

光看不练等于零。每学一个概念,马上打开编辑器写一写,手比眼睛学得快!

🔧 搞坏再修

别怕写错!故意把代码改坏,看报错信息,学会自己找 Bug,这才是真正的本事。

🎮 做小项目

每学完一个阶段就做个小东西——猜数字游戏、计算器、画图……做出来的成就感是最好的动力。

📝 记笔记

把学到的东西用自己的话写下来,或者讲给爸妈听。能说清楚才是真的懂了!

🗺️ 七步路线图
1
🏠

阶段 1:搭好你的"工作台"

第 1-2 周

就像画画前要准备好画纸和颜料一样,学编程第一步是把 Python 装到电脑上,再找一个好用的"代码编辑器"(就像写作文用的稿纸)。一切准备就绪,你就可以敲出人生第一行代码了!

Python Python

一种简单又好学的编程语言,就像英语是全球通用语言一样,Python 是编程界的"普通话"。

编辑器 Editor / IDE

专门写代码的软件,就像写作文用的 Word。推荐 Thonny(适合初学者)或 VS Code(更强大)。

运行 Run

让电脑执行你写的代码。就像按下录音键让录音机开始播放一样。

输出 Output

代码运行后显示出来的结果。你让电脑"说"什么,它就会在屏幕上"说"出来。

# 这是你的第一个 Python 程序!
# 它会让电脑在屏幕上说一句话

print("你好,世界!")
print("我是小明,我今年12岁,我正在学 Python!")
💡 小贴士:print 就是 Python 里的"说话命令"。括号里写什么,屏幕上就显示什么。试试看把里面的文字改成你想说的话!

🎯 阶段 1 检查点

  • 电脑上安装了 Python
  • 安装了编辑器(Thonny 或 VS Code)
  • 成功运行了 Hello World 程序
  • 能修改 print 里的文字并看到不同的输出
2
📦

阶段 2:变量和数据类型

第 3-4 周

程序运行时需要"记住"很多东西——你的名字、你的分数、游戏里的生命值……变量就是用来装这些东西的"贴标签的盒子"。不同的东西要用不同的盒子来装,这就是数据类型。

变量 Variable

贴了标签的盒子,用来存数据。标签是名字,盒子里装的值可以随时换。

整数 int(integer)

没有小数点的数字,像 1、100、-5。就像数苹果,只能是整个的。

浮点数 float

有小数点的数字,像 3.14、9.9。就像称体重,可以精确到小数。

字符串 string(str)

用引号包起来的文字,像 "你好"、"小明"。就像用信封把信装起来。

布尔值 bool(boolean)

只有两种可能:True(对/真)或 False(错/假)。就像开关,只有开和关。

输入 input

让程序等待你打字,然后把你打的内容存起来。就像问答题一样。

# 创建变量,就像给盒子贴标签
my_name = "小明"       # 字符串(文字)
my_age = 12           # 整数(没有小数点)
my_height = 1.52      # 浮点数(有小数点)
love_python = True    # 布尔值(真或假)

# 打印出来看看
print("我叫", my_name)
print("我今年", my_age, "岁")

# 让用户输入
food = input("你最喜欢吃什么?")
print("原来你也喜欢吃", food, "啊!")
💡 小贴士:变量名要用英文单词来取,比如 my_name 比 abc 好多了,因为一看就知道这个盒子里装的是名字。多个单词用下划线连接,比如 my_best_friend。

🎯 阶段 2 检查点

  • 能创建整数、浮点数、字符串、布尔值四种变量
  • 知道变量名要用有意义的英文
  • 能用 input() 让用户输入内容
  • 能做一个"自我介绍"小程序:问用户名字、年龄,然后打招呼
3
🔀

阶段 3:让程序学会"做决定"

第 5-6 周

到目前为止,程序只能从上往下一行行执行。但有时候我们需要它"看情况办事"——比如分数大于60就说及格了,否则就说还要加油。这就是条件判断和循环,让程序变得聪明的关键!

条件判断 if / elif / else

让电脑"看情况做决定"。就像游乐园的检票员:身高够了才能进去,不够就不能进。

比较运算符 ==, !=, >, <, >=, <=

用来比较两个东西的关系。== 是"等于",> 是"大于",!= 是"不等于"。

for 循环 for loop

把一件事重复做固定的次数。就像操场跑圈,老师说了跑3圈,你就跑3圈。

while 循环 while loop

只要条件满足就一直重复做。就像一直吃草莓,直到没有了才停。

break / continue break / continue

break 是"立刻停下来不做了",continue 是"跳过这次,继续下一次"。

range() range()

生成一串数字。range(5) 就是 0、1、2、3、4,常配合 for 循环使用。

# 条件判断:看分数决定说什么
score = 85

if score >= 90:
    print("太棒了!优秀!")
elif score >= 60:
    print("不错,及格了!")
else:
    print("加油,下次一定能行!")

# for 循环:打印 1 到 5
for i in range(1, 6):
    print("第", i, "次")

# while 循环:猜数字小游戏
secret = 7
guess = 0

while guess != secret:
    guess = int(input("猜猜数字是几?"))
    if guess > secret:
        print("太大了!")
    elif guess < secret:
        print("太小了!")
print("恭喜你猜对了!")
💡 小贴士:注意 Python 用缩进(每行前面的空格)来表示"谁属于谁"。if 下面的代码要缩进 4 个空格,这就像写作文分段一样重要!

🎯 阶段 3 检查点

  • 能写 if/elif/else 条件判断
  • 能写 for 循环和 while 循环
  • 知道 break 和 continue 的区别
  • 能做一个"猜数字"小游戏(正确答案就是上面的代码!)
4
🗃️

阶段 4:数据容器——装更多东西

第 7-9 周

一个变量只能装一个东西,如果你有 30 个同学的名字要存,难道要创建 30 个变量吗?当然不!Python 提供了"数据容器",就像一个盒子可以装很多东西。最常用的有三种:列表、字典和元组。

列表 list

有序的"排队名单",可以增删改查。用方括号 [] 表示。就像点名册一样。

索引 index

列表中每个东西的"位置编号",从 0 开始数。第1个是索引0,第2个是索引1。

字典 dict(dictionary)

像真正的字典一样:用"键"找"值"。用花括号 {} 表示。就像通讯录:名字→电话。

元组 tuple

和列表很像,但一旦创建就不能改。用圆括号 () 表示。就像被封印的盒子。

切片 slice

从列表中取出一部分。比如 list[1:3] 取索引1和2的元素。就像切蛋糕取一块。

append / remove append / remove

append 是往列表末尾加东西,remove 是删掉某个东西。

# 列表:存一组同学的名字
classmates = ["小明", "小红", "小刚"]

print(classmates[0])      # 第1个:小明
classmates.append("小美")  # 加一个新同学
print(classmates)           # 现在有4个人了

# 字典:存一个同学的信息
student = {
    "name": "小明",
    "age": 12,
    "hobby": "编程"
}

print(student["name"])    # 小明
print(student["hobby"])   # 编程

# 遍历列表:一个一个打印
for name in classmates:
    print("你好,", name)
💡 小贴士:列表的索引从 0 开始数,这就像楼层——有的国家把地面层叫 0 楼。所以 list[0] 是第一个,list[1] 是第二个。记住这个,很多 Bug 都能避免!

🎯 阶段 4 检查点

  • 能创建列表、字典、元组
  • 知道列表索引从 0 开始
  • 能用 for 循环遍历列表里的每个元素
  • 能做一个"班级通讯录":用字典列表存多个同学的信息
5
⚙️

阶段 5:函数——你的编程"小助手"

第 10-12 周

如果你发现同一段代码写了好几遍,那就该把它包装成一个"函数"。函数就像一个自动售货机——你投进去材料(参数),它给你吐出结果(返回值)。定义一次,以后想用就调用,超级方便!

函数 function(def)

一段可以重复使用的代码块,给它一个名字,需要时"调用"它就行。

参数 parameter / argument

传给函数的"原材料"。就像你给榨汁机放水果,水果就是参数。

返回值 return value

函数处理完后"还给你"的结果。榨汁机把水果变成了果汁还给你。

模块 module

别人写好的函数集合,你可以用 import 导入来用。就像借别人的工具箱。

导入 import

把模块引进来使用。import random 就能用随机数功能了。

内置函数 built-in function

Python 自带的函数,不需要导入就能直接用。比如 print()、len()、int()。

# 定义一个函数:打招呼
def say_hello(name):
    return "你好," + name + "!欢迎学 Python!"

# 调用函数
message = say_hello("小明")
print(message)

# 定义一个计算函数:算面积
def calc_area(length, width):
    area = length * width
    return area

print("房间面积是:", calc_area(5, 4))  # 20

# 导入模块:用 random 做随机抽奖
import random

prizes = ["铅笔", "橡皮", "笔记本", "贴纸"]
winner = random.choice(prizes)
print("你抽到了:", winner)
💡 小贴士:函数名和变量名一样,要用有意义的名字。say_hello 比 func1 好一万倍!另外,函数只做一件事就好,不要让它又算面积又打印又存文件。

🎯 阶段 5 检查点

  • 能用 def 定义自己的函数
  • 知道参数和返回值的区别
  • 能用 import 导入 random、math 等模块
  • 能做一个"随机抽奖机"或"简易计算器"函数
6
🛡️

阶段 6:进阶技能——让代码更强大

第 13-16 周

学了前面的基础,你已经能写很多小程序了!这个阶段我们来学一些"进阶武器"——怎么读写文件(让程序能保存数据)、怎么处理错误(程序出问题不会直接崩溃)、怎么用字符串做更多花样操作。

文件读写 file I/O(open/read/write)

让程序读取或创建文件。就像打开笔记本写字,写完再合上。

异常处理 try / except

给代码加一层"保险"。如果出错了不会崩溃,而是执行备选方案。

字符串方法 string methods

对文字做各种操作:变大小写、查找、替换、分割……就像文字的魔法棒。

列表推导式 list comprehension

一行代码创建新列表的"快捷方式"。就像用公式批量处理数据。

注释 comment(#)

代码里用 # 开头的说明文字,Python 会忽略它。写给人类看的笔记。

class

创建"模板",可以批量制造相似的对象。就像饼干的模具,一个模具可以做出很多饼干。

# 文件读写:保存和读取数据
# 写入文件(保存日记)
with open("diary.txt", "w") as file:
    file.write("今天学了 Python,好开心!")

# 读取文件
with open("diary.txt", "r") as file:
    content = file.read()
    print(content)

# 异常处理:防止程序崩溃
try:
    num = int(input("请输入一个数字:"))
    print("你输入了:", num)
except ValueError:
    print("这不是数字哦,请重新输入!")

# 字符串方法
text = "Hello Python"
print(text.upper())      # HELLO PYTHON
print(text.lower())      # hello python
print(text.replace("Hello", "Hi"))  # Hi Python

# 列表推导式:一行创建新列表
squares = [x * x for x in range(1, 6)]
print(squares)  # [1, 4, 9, 16, 25]
💡 小贴士:try/except 就像给代码穿了一件防弹衣。用户可能输入乱七八糟的东西,有了它程序就不会崩溃,而是友好地提示用户重新输入。

🎯 阶段 6 检查点

  • 能用 open() 读取和写入文件
  • 能用 try/except 处理常见错误
  • 知道 3 种以上字符串方法(upper/lower/replace/split)
  • 能做一个"电子日记本":写日记保存到文件,下次打开能读出来
7
🏆

阶段 7:实战项目——做出真东西!

第 17-20 周

恭喜你走到了最后一关!现在是时候把前面学的全部用上,做一个真正有用的项目了。做项目是最好的学习方式,因为你会遇到真实的问题,然后想办法解决它们。做完一个项目,你的编程能力会突飞猛进!

项目 project

一个完整的、有用的程序。不再是练习题,而是真正能用的东西!

调试 debugging

像侦探一样找出代码里的 Bug(错误)并修好它。用 print 大法追踪问题。

重构 refactoring

不改功能,只让代码变得更整洁、更好读。就像把房间收拾干净。

库 / 包 library / package

别人写好的代码集合,pip install 就能用。站在巨人的肩膀上!

🎮 推荐实战项目(选 1-2 个做):

🎯 猜数字升级版

记录猜测次数,有难度选择(简单/中等/困难),最高分保存到文件。

📖 单词本

添加、查询、删除单词,支持随机测试,数据保存到文件。

💰 零花钱记账

记录收入和支出,按月统计,显示饼图(用 turtle 画图)。

🐢 turtle 画图

用 Python 自带的 turtle 库画图形、画花朵、画星星,非常有趣!

# turtle 画图示例:画一朵花
import turtle

t = turtle.Turtle()
t.speed(8)

for i in range(36):
    t.color("red")
    t.forward(100)
    t.right(90)
    t.color("yellow")
    t.forward(60)
    t.right(90)
    t.right(10)  # 每次多转10度

turtle.done()
💡 小贴士:做项目的时候,先想清楚要做什么(写个简单计划),再开始写代码。遇到问题别急着问人,先自己想想、查查、试试——这就是程序员解决问题的"三板斧"。

🎯 阶段 7 检查点

  • 完成了至少一个完整的项目
  • 项目代码有注释,别人能看懂
  • 能独立调试并修复常见的 Bug
  • 能向爸妈或同学演示你的项目并讲解原理
阶段 主题 核心词汇 时间
1 搭好工作台 Python、编辑器、运行、输出 1-2 周
2 变量和数据类型 变量、整数、浮点数、字符串、布尔值、输入 3-4 周
3 条件判断和循环 if/elif/else、for、while、break、range 5-6 周
4 数据容器 列表、字典、元组、索引、切片、append 7-9 周
5 函数和模块 函数、参数、返回值、模块、import 10-12 周
6 进阶技能 文件读写、异常处理、字符串方法、类 13-16 周
7 实战项目 项目、调试、重构、库/包 17-20 周
🧠 动动脑:Python 思考题

这些问题帮你检验是否真的理解了,试试看能答出几道?

阶段 2 · 基础
1. 变量和常量有什么区别?为什么叫"变"量?
想想贴了标签的盒子,里面的东西能不能换?
阶段 2 · 基础
2. 如果你要把全班 30 个同学的名字都存起来,你会用什么数据类型?为什么不用 30 个变量?
想想"排队名单"和"30 个单独的盒子"哪个更方便管理?
阶段 2 · 基础
3. print("5" + "3") 和 print(5 + 3) 的结果一样吗?为什么?
"5" 加了引号,它还是数字吗?字符串的 + 和数字的 + 做的事情一样吗?
阶段 3 · 流程
4. for 循环和 while 循环有什么区别?什么时候用 for,什么时候用 while?
想想"跑3圈"和"跑到老师喊停"的区别——哪个知道要重复几次?
阶段 3 · 流程
5. 如果一段代码里同时有 if、elif 和 else,Python 会按什么顺序判断?如果 if 的条件已经满足了,elif 还会执行吗?
想想游乐园检票:如果第一个条件已经通过了,还需要检查后面的条件吗?
阶段 3 · 流程
6. 什么是"死循环"?怎么写代码才能避免死循环?
想想一个永远不停下来的旋转木马——是哪里出了问题?
阶段 4 · 容器
7. 列表(list)和字典(dict)最大的区别是什么?如果要存全班同学的成绩,你会选哪个?为什么?
列表是按位置找东西,字典是按"名字"找东西。你想按学号找还是按名字找?
阶段 4 · 容器
8. 列表的索引为什么从 0 开始而不是从 1 开始?你觉得这样设计有什么好处?
没有标准答案!想想"距离起点的步数"——第一个元素距离起点有几步?
阶段 5 · 函数
9. 函数里用 return 返回结果后,后面的代码还会执行吗?如果没有写 return,函数返回什么?
想想自动售货机:它已经把饮料吐出来了,还会继续吐吗?
阶段 5 · 函数
10. 为什么我们需要函数?如果不用函数,写一个 1000 行的程序会遇到什么问题?
想想如果做红烧肉每次都要从头看一遍 20 步的菜谱,和有一张写好的步骤卡,哪个更方便?
阶段 6 · 进阶
11. 如果用户在你的程序里输入了字母而不是数字,程序会崩溃。你怎么解决这个问题?
想想给代码穿"防弹衣"——try/except 能帮你什么?
阶段 6 · 进阶
12. with open(...) as file 这种写法比直接 open() 再 close() 好在哪里?
想想借了别人的书——用 with 就像自动还书机,忘了还也没关系。
综合思考
13. 如果要做一个"零花钱记账本"程序,你会用到前面学的哪些知识?试着列出来。
想想这个程序需要什么功能:输入金额、存起来、显示余额……每个功能对应哪些知识?
综合思考
14. Python 里的 = 和数学里的 = 一样吗?x = x + 1 在数学里说得通吗?在 Python 里是什么意思?
数学的 = 是"相等",Python 的 = 是"把右边的值放进左边的盒子里"。
综合思考
15. 学完这 7 个阶段后,你觉得 Python 还能用来做什么?(提示:想想你学过的 AI、机器学习、游戏开发……)
想想知识库里的其他笔记——神经网络、数据库、网站……这些都和 Python 有什么关系?
🌟 给小学生学 Python 的 6 条建议
🐌 慢慢来,不着急

每个阶段花 2-3 周很正常。如果觉得难,说明你正在进步!卡住的时候休息一下,明天再看可能就懂了。

🐛 错误是你的朋友

看到红色报错别害怕!每个错误都在告诉你哪里需要改。读报错信息,它其实在帮你。

📖 多看别人的代码

在知识库里我们已经有很多笔记了,每个词汇页面都有代码示例。多看、多抄、多改,慢慢就理解了。

🤝 讲给别人听

把学到的东西讲给爸爸妈妈或同学听。如果你能把一个概念讲清楚,说明你真的学会了!

🎯 每天写 30 分钟

每天练 30 分钟比周末突击 5 小时效果好得多。就像练琴,贵在坚持。

🏗️ 做项目比刷题重要

与其做 100 道无聊的练习题,不如做一个有趣的小项目。项目会逼你把所有知识串起来。