这是一本为家长和孩子共同学习 Python 编程而设计的教程。作为一个有编程经验的家长,我在 2020 年疫情期间开始教当时 10 岁的孩子学习 Python。这份教程记录了我们的学习历程,从简单的备课大纲逐渐扩展成当前的教学内容。
这本书希望通过编程教学,共建亲子关系——家长陪伴和引导孩子的成长,通过编程的创造力一起体验学习乐趣。
在这个 AI 大行其道的时代,人类的学习重在过程,不在目的!
💡 为什么还要学编程?
计算器很早就比人类在数学计算上强了,但是孩子依旧要学习数学,具备一定的计算能力。因为这是一种基本的能力培养,也是学习其它理科的基础;
AI 虽然很早就在下棋上战胜了人类,但是我们依旧会陪孩子下棋,通过下棋锻炼孩子的策略性思维,并享受下棋时的亲子乐趣!
学习编程的目的是了解数字世界运行的原理,培养思维能力和创造能力,而不是一定要成为程序员。
对于**小学高年级(3年级以上)**的孩子来说,Python 是比 Scratch 更好的选择:
✅ 真实的编程体验 - 直接接触真实的代码和编程工具,了解计算机程序、命令行、开发工具以及基本的计算机体系结构
✅ 更深入的概念理解 - 每一步都是透明的,孩子能真正理解程序是如何运行的
✅ 更好的知识迁移 - 学到的编程思维可以轻松迁移到其他编程语言
✅ 更大的成长空间 - 可以陪伴孩子从小学到高中,甚至大学和工作
💡 实践证明:小学高年级的孩子完全有能力接受这些概念,并且会借此了解一些软件和计算机体系结构的基本知识!
这本书是同时为家长和孩子设计的,它既可以是家长的备课教案,也可以是孩子的自学课本。
适合年龄:小学高年级(10-12 岁)
知识基础:
- ✅ 掌握基本的数学运算(加减乘除)
- ✅ 了解未知数和方程的概念
- ✅ 会解简单的应用题
- ✅ 具备简单的逻辑推理能力
- ✅ 了解小数和分数运算
- ✅ 掌握基本几何图形(长方形、正方形、圆等)的面积和周长计算
⚠️ 未学习过数学中的函数概念⚠️ 未接触过逻辑运算符号和抽象的数据结构
学习方式:
- 在家长指导下学习新知识
- 独立阅读和复习已学内容
- 参考书中的例题和练习
知识基础:
- ✅ 具备高中数学知识
- ✅ 学习过函数的概念
- ✅ 具备基本的电脑操作能力
- ✅ 如果家长本身会编程就更好,但不是必需的
使用方式:
- 作为教学参考和备课手册
- 陪伴孩子学习,解决环境、安装和出错调试等问题
- 如果不会编程,可以先自学、操作和练习,然后再给孩子讲解教学
💡 家长不会编程怎么办?
这完全不是问题!您可以把它变成一项共学活动:
- 先自学:自己先跟着教程学一遍,完成练习
- 先操作:安装环境,编写代码,运行程序
- 先练习:自己动手做每个例题和练习
- 再教学:掌握后再给孩子讲解和教学
孩子会看到"爸爸妈妈也在努力学习",这反而会更好地激励孩子!学习过程本身就是最好的亲子陪伴。
考虑到小学高年级阶段孩子的知识结构特点,在内容编排上:
- ✅ 生活化引入:每个概念都用生活化的例子来引入
- ✅ 循序渐进:从简单到复杂,做好足够的逻辑台阶搭建
- ✅ 自然衔接:避免突然跳跃,让知识点自然衔接
- ✅ 类比教学:大量使用类比和比喻(比如把变量比作盒子)
- ✅ 详细说明:提供详细的步骤说明和注释
- ✅ 梯度练习:设计逐步增加的练习难度
- ✅ 适度扩展:在合适的上下文下适度扩展一些软件设计和计算机体系结构知识
- 复习和巩固小学数学的各种知识,如数学运算和应用题、几何应用、统计概念等...
- 通过编程为数学知识找到一个应用的场合,让学校的知识能够和解决具体的问题关联起来
- 练习题目贴近孩子的生活(计算图形、课表管理、小游戏)
- 从基础的命令行程序,到图形界面,再到数据报表
- 让孩子看到编程的实际用途,保持学习动力
这本书既可以作为家长的教学手册,也可以作为孩子的参考书:
- 对孩子:用生动有趣的语言讲解,配上大量练习
- 对家长:提供教学建议(Tips 标注的板块),指出易错点和教学技巧
整个教程分为 5 个阶段,共 18 章,循序渐进地引导孩子进入 Python 编程的世界:
第一阶段:入门基础(第 1-5 章)
- 安装 Python 和编程工具
- 学习输入输出、变量(字符串、数字、布尔值)
第二阶段:程序控制(第 6-9 章)
- 顺序执行、条件判断、循环语句
- 用流程图理解程序逻辑
第三阶段:程序组织(第 10-12 章)
- 列表、字典、函数
第四阶段:综合应用(第 13-16 章)
- 库的使用、命令行程序、图表、图形界面
第五阶段:知识扩展(第 17-18 章)
- 程序设计方法、计算机体系结构
| 章节 | 标题 | 内容简介 |
|---|---|---|
| 第1章 | 安装环境 | 准备编程工具箱,了解计算机如何工作 |
| 第2章 | 输入与输出 | 让程序与你对话,用变量记住信息 |
| 第3章 | 字符串变量 | 处理文字信息,学习内存与索引 |
| 第4章 | 数值变量 | 掌握不同类型的数字,让程序进行数学计算 |
| 第5章 | 布尔变量 | 学会真与假的判断,控制程序流程 |
| 第6章 | 顺序语句 | 理解程序执行顺序,用Turtle画图 |
| 第7章 | 条件语句 | 让程序做决定,解决分支问题 |
| 第8章 | 循环语句 | 用循环简化代码,提升效率 |
| 第9章 | 流程图 | 用图形画出程序逻辑,理解算法 |
| 第10章 | 列表 | 管理有序数据,学习内存存储原理 |
| 第11章 | 字典 | 用键值对组织信息,像查字典一样快 |
| 第12章 | 函数 | 打包重复代码,像搭积木一样复用 |
| 第13章 | 库 | 使用现成的工具箱,站在巨人的肩膀上 |
| 第14章 | 命令行程序 | 制作实用工具,处理复杂任务 |
| 第15章 | 报表程序 | 把数据变图表,让数字说话 |
| 第16章 | 图形程序 | 创建可视化界面,提升用户体验 |
| 第17章 | 程序设计 | 写出好程序,培养工程师思维 |
| 第18章 | 计算机体系结构 | 理解硬件如何协作,连接软件世界 |
使用 mdBook 生成的精美网页版,支持:
- ✅ 响应式设计,支持手机、平板、电脑阅读
- ✅ 内置搜索功能
- ✅ 代码高亮和复制功能
- ✅ 侧边栏导航
第一步:家长先阅读
- 家长完整阅读一遍教程,了解整体内容和结构
- 理解各章节的知识点和难易程度
- 提前熟悉要教授的知识,有针对性地备课
第二步:家长教孩子
- 按照章节顺序,循序渐进地给孩子讲解
- 演示代码的编写和运行过程
- 引导孩子理解概念,而不是死记硬背
第三步:陪伴和解决问题
- 帮助孩子解决环境配置、安装和出错调试等技术问题
- 在孩子遇到困难时提供提示和引导
- 鼓励孩子独立思考和解决问题
第四步:共建亲子关系
- 通过编程教学,培养孩子的逻辑思维和创造力
- 陪伴孩子在编程世界探索和成长
- 一起体验编程创造的乐趣
欢迎任何形式的贡献!
如果你想在自己的电脑上阅读或修改教程,可以使用 mdBook 构建本地版本。
前置要求
-
安装 Rust(如果尚未安装)
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
-
安装 mdBook
cargo install mdbook
-
安装推荐插件(可选)
# Mermaid 图表支持 cargo install mdbook-mermaid # 提示框支持 cargo install mdbook-admonish
构建和预览
# 克隆仓库
git clone https://github.com/magicbowen/python-for-kids.git
cd python-for-kids
# 启动本地服务器
mdbook serve --open浏览器会自动打开 http://localhost:3000,你就可以看到本地版本的教程了。
生成 PDF
如果你想导出 PDF 版本,最简单的方式是:
- 在网页版本中点击右上角的打印机图标
- 使用浏览器的"打印 → 另存为 PDF"功能
如果你发现了:
- 错别字或表述不清的地方
- 代码错误
- 内容缺失或需要改进
请提交 Issue
如果你有:
- 更好的讲解方式
- 新的练习题目
- 有趣的项目想法
欢迎提交 Issue 或 Pull Request!
- Fork 本仓库
- 创建你的特性分支 (
git checkout -b feature/AmazingFeature) - 提交你的修改 (
git commit -m 'Add some AmazingFeature') - 推送到分支 (
git push origin feature/AmazingFeature) - 开启一个 Pull Request
本项目采用 MIT License 开源协议。
如果你有任何问题或建议,欢迎通过以下方式联系:
- 提交 Issue
- 发起 Discussion
⭐ 如果这个项目对你有帮助,请给个 Star!⭐
Made with ❤️ by magicbowen