Python 2
制作:杭州古德微机器人有限公司 最后更新:2020.4.18
目的
为响应国务院和教育部提出在中小学逐步设置人工智能和编程课程的号召,特开设基于树莓派的人工智能小创客课程。帮助学生通过编程和实践,感知、体验和应用人工智能,培养学生对人工智能的兴趣,提升孩子的逻辑思维能力,加强程序原理的理解能力,提升孩子创意物化的能力,加强孩子的动手制作能力。
Python2课程是本课程体系的高级课程,基于树莓派结合SenseHat,采用Python作为编程语言,实现了贪食蛇、小蜜蜂、俄罗斯方块、笨鸟先飞等游戏设计,寓教于乐,有效激发了同学们的学习兴趣。课程中学习Python中字符串、列表、多线程等应用,同时学习Python语言控制硬件的方法。
课程内容
Python1回顾
- 01 温故而知新
- 主要内容:复习Python1的主要内容,主要包括流水灯、红外控制灯、舵机控制、蜂鸣器演奏、查找质数、乘法口诀表、列表操作等。
- 编程环境介绍:Thonny Python IDE,介绍如何新建、保存、运行程序
- 编程知识:复习Python常用的语法、结构;
SenseHat控制
02 点阵屏初体验
- 主要内容:学习如何根据图形化编程中的点阵屏控制代码,过渡到Python环境里的代码编程;显示字符、字符串、点;显示颜色的调节;
- 编程知识:字符、字符串;
- 数学知识:坐标、坐标计算;
- 机械及电子知识:色彩的组成、亮度的调节;
03 函数与变化的方框
- 主要内容:函数的定义与使用、函数的参数传入传出、点阵屏动画的显示;
- 编程知识:变量,函数的定义、参数、使用;多重循环;
- 数学知识:坐标变换;
- 04 水平仪与摇杆控点
- 主要内容:角度的检测及显示、水平仪的设计与实现、摇杆的检测、摇杆控制点的移动;
- 编程知识::顺序结构,多条件分支,循环结构;阻塞概念;最大值、最小值;
- 机械及电子知识:加速度计、摇杆的检测原理;
贪食蛇游戏
05 贪食蛇1
- 主要内容:通过摇杆控制小点的移动,当与产生的苹果重合时,产生新的苹果;
- 编程知识:随机数,数的比较,循环,函数封装;
06 贪食蛇2
- 主要内容:实现当蛇吃到苹果后,会变长;
- 编程知识:字符串与数的变换;if else 语句的变形;列表的增、减;变量,条件判断,分支结构,循环结构;
07 贪食蛇3
- 主要内容:实现贪食蛇的边界控制、死亡条件判断;游戏结束时显示分数;
- 编程知识:字符串的索引、查找、匹配;变量,顺序结构,条件判断等;
小蜜蜂游戏
08 小蜜蜂1
- 主要内容:采用字符串+列表的形式,实现小蜜蜂及射击点位置的指示;
- 编程知识:循环结构,多分支结构;字符串,字符串的替换;列表,列表的遍历;复杂逻辑表示;
09 小蜜蜂2
- 主要内容:原来程序在无摇杆操作时,游戏会一直停在那里等待操作;介绍多线程,以解决该问题;
- 编程知识:字符串的提取、拼接、显示;多任务操作系统;基于时间片的任务调度;多线程;
10 小蜜蜂3
- 主要内容:引入多线程,实现小蜜蜂周期性自动下降的功能;分数的显示
- 编程知识:列表元素的删除、插入、替换;多任务操作系统;基于时间片的任务调度;多线程;程序的调试方法;
小蜜蜂游戏
11 俄罗斯方块1
- 主要内容:游戏原理及思路分析;采用字符串、列表知识,实现各种积木的表示方法;程序框架;
- 编程知识:框架设计;顺序结构,循环结构,分支结构;列表操作、字符串操作;现实问题的程序语言表述;
- 物理知识:声音的形成原理;
12 俄罗斯方块2
- 主要内容:积木的移动及显示,积木重叠判断及处理;
- 编程知识:各种程序结构;列表操作、字符串操作;全局变量;函数参数;现实问题的程序语言表述;约束条件的程序表达;
13 俄罗斯方块3
- 主要内容:积木满行处理,分数的显示,积木自动下降;
- 编程知识:各种程序结构;字符串内容匹配算法;列表的插入、替换、删除;带条件的循环实现;多线程;现实问题的程序语言表述;约束条件的程序表达;程序调试方法;
笨鸟先飞游戏
14 笨鸟先飞1
- 主要内容:笨鸟先飞游戏的原理、设计思路分析;小鸟、障碍物的表示;同学尝试自主设计;
- 编程知识:现实问题的程序员思维方法;多种程序结构、字符串及列表操作;程序框架设计;
15 笨鸟先飞2及课程复习
- 主要内容:实现笨鸟先飞小游戏,并进行自由扩展及改进;课程回顾及总结
- 编程知识:思维的代码表达;多线程;程序调试技巧;
- 知识:进一步巩固之前学习的编程、数学、物理和电子知识,培养学生的自主创新能力。