本标准面向青少年编程能力设计,语法部分仅限于Python语言,所定义的编程能力划分 为四个等级。每级分别规定相应的总体要求、核心知识点以及所对应能力要求。依据本标准 进行的编程能力等级培训、测试和认证,均应采用Python语言。 本标准仅针对青少年编程能力需求,不覆盖所有Python语法,除编程思维的分级及要求 外,可供借鉴但不完全适用于其他编程语言。本标准不规定Python语言编程环境。 依据本标准进行的编程能力等级测试和认证,均应使用Python语言完成,应符合相应等 级的总体要求、核心知识点掌握程度以及所对应能力要求。
1.Python四级考试基本设计原则
青少年编程等级Python语言面向青少年设计,区别于针对专业技能培养的需求,采用如下4条基本设计原则。
- 基本能力原则:总体上,以基本的编程思维为能力目标,不涉及精深的专业知识,适当增加学科背景内容,不以培养专业能力为导向。
- 心理适应原则:参考发展心理学,符合青少年身心发展规律和特点。
- 学业适应原则:基本适应青少年学业知识体系,不盲目引入大学教育知识体系。
- 法律适应原则:符合《中华人民共和国未成年人保护法》的规定。
2 Python四级考试能力等级总体描述
青少年编程等级Python语言共包括四个等级,以四种编程思维能力为依据进行划分,Python 四级的具体如下表所示。
表1 青少年编程 Python 语言等级划分
等级 | 能力目标 | 能力划分说明 |
Python四级 | 基础算法思维 | 以常见和常用算法为目标的编程能力 |
青少年编程等级Python语言以基本的计算思维培养为导向,从代码量角度,Python四级考试的基本总体要求如下表所示。
表2 青少年编程 Python 语言能力等级总体要求
等级 | 能力目标 | 总体要求说明 |
Python四级 | 基础算法思维 | 编写不少于100行Python程序代码,掌握10类算法 |
4.1 Python四级考试总体能力要求
“Python四级”以“基础算法思维”为能力目标,具体解释为如下4个方面:
- 算法阅读能力:能够阅读带有算法的Python程序,理解运行过程,预测运行结果;
- 算法描述能力:能够采用自然语言、流程图和Python语言描述算法的执行过程;
- 算法应用能力:能够根据掌握的算法采用Python程序解决实际应用问题;
- 算法评估能力:评估算法在计算时间、存储空间和动态特性等方面的效果。
4.2 Python四级考试核心知识点说明
“Python四级”包含12个核心知识点,如下表所示。
编号 | 知识点名称 | 知识点说明 | 能力要求 |
1 | 堆栈队列 | 堆、栈、队列等结构的基本使用 | 掌握编写带有堆栈队列结构的程序,理解数据结构的概念 |
2 | 排序 | 不少于5种排序算法 | 理解并掌握排序算法的实现,能够辨析算法的计算和存储效果 |
3 | 查找 | 不少于5种查找算法 | 理解并掌握查找算法的实现,能够辨析算法的计算和存储效果 |
4 | 匹配 | 不少于5种匹配算法,至少含2种多字符串匹配算法 | 理解并掌握匹配算法的实现,能够辨析算法的计算和存储效果 |
5 | 分形 | 基于分形几何,不少于5种算法 | 理解分形几何的概念,掌握实现分形几何的程序方法 |
6 | 聚类 | 不少于3种聚类算法 | 理解并掌握聚类算法的实现,能够应用它解决实际问题 |
7 | 预测 | 以线性回归为基础的预测算法 | 理解并掌握预测算法的实现,能够应用它解决实际问题 |
8 | 调度 | 不少于3种调度算法 | 理解并掌握调度算法的实现,能够应用它解决实际问题 |
9 | 蒙特卡洛 | 蒙特卡洛算法及应用 | 理解蒙特卡洛算法的概念,能够应用它解决实际问题 |
10 | 加权分类 | 基本加权策略的分类算法 | 理解并掌握加权分类算法的实现,能够应用它解决实际问题 |
11 | 路径规划 | 不少于3种路径规划算法,含贪心算法 | 理解并掌握路径规划算法的实现,能够应用它解决实际问题 |
12 | 算法分析 | 计算复杂性,以时间、空间、动态性为特点的算法分析 | 理解并掌握运用计算复杂性分析问题的能力 |
“Python四级”12个核心知识点分别对应的能力要求如表9所示。
4.4 Python四级考试标准符合性规定
青少年编程能力等级测试包含了对Python四级综合能力的测试且不低于综合能力要求,测试题均匀
覆盖了Python四级核心知识点并且难度不低于各知识点的能力要求。
用于交换和共享的青少年编程能力等级测试及试题应符合GB/T 29802-2013的规定。
4.5 Python四级考试能力测试要求
Python四级的测试应明确测试形式及测试环境,具体要求如表10所示。
表10 青少年编程等级 Python 四级测试形式及测试环境表
内容 | 描述 |
考试形式 | 理论考试与编程相结合 |
考试环境 | 支持Python程序运行的环境,支持文件读写,不限于单机版或Web网络版 能够统计程序编写时间、提交次数、运行时间及内存占用 |