青少年编程能力等级_第2部分python标准-2020.9.12.pdf
ICS 03.180 A 18 团 体 标 准 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 青少年编程能力等级 第 2 部分:Python 编程 Programming Ability for Adolescents Part 2: Python Language (报批稿) 2019-10-15 发布 2019-11-01 实施 全国高等学校计算机教育研究会口口口口 全国高等院校计算机基础教育研究会 发 布 发 布 中国软件行业协会口口口口 中国青少年宫协会口口口口 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 目 次 前言 ································································································································································ III 青少年编程能力等级:第 2 部分···················································································································· 1 1 范围····························································································································································· 1 2 规范性引用文件 ········································································································································· 1 3 术语和定义 ················································································································································· 1 4 3.1 Python 语言 ········································································································································ 1 3.2 青少年 ················································································································································ 1 3.3 青少年编程能力 Python 语言 ··········································································································· 1 3.4 程序 ···················································································································································· 1 3.5 语法 ···················································································································································· 1 3.6 语句式程序 ········································································································································ 1 3.7 模块式程序 ········································································································································ 1 3.8 IDLE ··················································································································································· 1 3.9 了解 ···················································································································································· 2 3.10 理解 ·················································································································································· 2 3.11 掌握 ·················································································································································· 2 青少年编程能力 Python 语言概述 ············································································································ 2 4.1 总体设计原则 ···································································································································· 2 4.2 能力等级总体描述 ···························································································································· 2 5 “Python 一级”的详细说明 ······················································································································· 3 5.1 能力目标及适用性要求····················································································································· 3 5.2 核心知识点说明 ································································································································ 3 5.3 核心知识点能力要求 ························································································································ 5 5.4 标准符合性规定 ································································································································ 5 5.5 能力测试要求 ···································································································································· 5 6 “Python 二级”的详细说明 ······················································································································· 5 6.1 能力目标及适用性要求····················································································································· 5 6.2 核心知识点说明 ································································································································ 5 6.3 核心知识点能力要求 ························································································································ 7 6.4 标准符合性规定 ································································································································ 7 6.5 能力测试要求 ···································································································································· 7 7 “Python 三级”的详细说明 ······················································································································· 7 7.1 能力目标及适用性要求····················································································································· 7 7.2 核心知识点说明 ································································································································ 7 I T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 7.3 核心知识点能力要求 ························································································································· 9 7.4 标准符合性规定································································································································· 9 7.5 能力测试要求 ···································································································································· 9 8 “Python 四级”的详细说明 ······················································································································· 9 8.1 目标能力及适用性要求 ····················································································································· 9 8.2 核心知识点说明································································································································· 9 8.3 核心知识点能力要求 ······················································································································· 11 8.4 标准符合性规定······························································································································· 11 8.5 能力测试要求 ·································································································································· 11 附录 A(资料性附录) II 标准范围的 Python 标准函数列表 ······································································ 12 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 前 言 本标准分为四部分: ——第 1 部分:图形化编程 ——第 2 部分:Python 编程 ——第 3 部分:机器人编程 ——第 4 部分:C/C++语言编程 本部分为第 2 部分。 本部分按照 GB/T 1.1-2009 给出的规则起草。 请注意本文件的某些内容可能涉及专利。本文件的发布机构不承担识别这些专利的责任。 本部分由全国高等学校计算机教育研究会提出并归口。 本部分起草单位:北京理工大学、清华大学、深圳点猫科技有限公司、北京工商大学、济南大学、 北京中医药大学、河北大学、淮阴工学院、西南石油大学、南京大学、大连理工大学、北京航空航天 大学、山东大学、河南理工大学、湖北经济学院、中国社会科学院大学、中国青年创业就业基金会、 北京众码教育科技有限公司、延安大学、昆明理工大学、东北师范大学、高等教育出版社有限公司、 中国水利水电出版社有限公司。 本部分主要起草人:嵩天、郑莉、李天驰、孙悦、赵霞、黄天羽、张航、蒋彦、郭凤英、李芬芬、 肖胜刚、杨帆、王杨、刘娟、刘文飞、刘翼、张然、潘晟旻、雷俊丽、宿培成、张莉、艾明晶、蒋志 方、朱世松、吴秉昆、乔梁、李泽、秦莺飞、雷顺加、张弛、李雁翎。 本标准的发布团体共同约定如下知识产权规定: 1.本标准的知识产权(不含标准内容涉及的专利和软件著作权)归所有联合发布团体共同所有, 任何机构(无论是否为起草单位和发布团体)和个人(无论是否为起草人)不得在未授权的情况下处 置知识产权。任何机构和个人使用本标准名称时必须同时注明标准封面上的全部标准代号并说明发布 机构, 说明发布机构时必须列出全部联合发布团体, 列出顺序与封面顺序一致 (可注明排名不分先后) 。 本标准的全部或部分内容如被国家标准、行业标准使用,该内容的起草人应被列入国家标准、行业标 准起草人。本标准由联合发布团体共同授权专业出版机构独家出版。 2.本标准由联合发布团体的成员约定采用,同时供社会自愿采用。 3.任何采用本标准的产品和服务, 应通过全国高等学校计算机教育研究会主持的标准符合性认证, 或者通过所有联合发布团体共同授权的认证机构的标准符合性认证,取得符合本标准的认证证书后方 可在产品和服务的包装标识、宣传和广告材料、协议合同等法律文件、及其他相关场合声明该产品和 服务执行本标准。 标准符合性认证证书是对产品和服务授权使用本标准的唯一形式,产品认证的版本、 服务认证的有效期必须与执行标准的声明和标识一致。 4.任何企业和机构声明执行本标准但未指明具体服务和产品时,该企业和机构至少应该有一项服 务和产品取得标准符合性认证证书,且认证的产品版本和认证的服务处于认证有效期内。 III T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 5.其他团体标准、企业标准采用本标准时应作为“规范性引用文件”明确列出,并在标准内容中 明确引用具体章条。未经明确引用使用本标准内容视为侵权。 6.在学术研究、公开发表的文章和著作中使用本标准内容,应按照规范合法的方式引用,并将封 面上的标准名称和完整编号列入参考文献。 IV T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 青少年编程能力等级:第 2 部分 1 范围 本标准规定了青少年编程能力等级,本部分为本标准的第 2 部分。 本部分规定了青少年编程能力等级(Python 编程)及其相关能力要求,并根据等级设定及能力要 求给出了测评方法。 本标准本部分适用于各级各类教育、考试、出版等机构开展以青少年编程能力教学、培训及考核为 内容的业务活动。 2 规范性引用文件 下列文件对于本文件应用必不可少。凡是注日期的引用文件,仅注日期的版本适用于本文件。凡是 不注日期的引用文件,其最新版本(包括所有的修改单)适用于本文件。 GB/T 29802 信息技术 学习、教育和培训测试试题信息模型 3 3.1 术语和定义 Python 语言 Python Language 由 Guido van Rossum 创造的通用、脚本编程语言,本部分采用 3.5 及之后的 Python 语言版本,不 限定具体版本号。 3.2 青少年 Adolescent 年龄在 10 岁到 18 岁之间的个体,此“青少年”约定仅适用于本部分。 3.3 青少年编程能力 Python 语言 Python Programming Ability for Adolescents “青少年编程能力等级 第 2 部分:Python 编程”的简称。 3.4 程序 Program 由 Python 语言构成并能够由计算机执行的程序代码。 3.5 语法 Grammar Python 语言所规定的、符合其语言规范的元素和结构。 3.6 语句式程序 Statement Type Program 由 Python 语句构成的程序代码,以不包含函数、类、模块等语法元素为特征。 3.7 模块式程序 Modular Program 由 Python 语句、函数、类、模块等元素构成的程序代码,以包含 Python 函数或类或模块的定 义和使用为特征。 3.8 IDLE IDLE Python 语言官方网站(https://www.python.org)所提供的简易 Python 编辑器和运行调试环境。 1 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 3.9 了解 Know 对知识、概念或操作有基本的认知,能够记忆和复述所学的知识,能够区分不同概念之间的差别或 者复现相关的操作。 3.10 理解 Understand 与了解(3.9 节)含义相同,此“理解”约定仅适用于本部分。 3.11 掌握 Master 能够理解事物背后的机制和原理,能够把所学的知识和技能正确地迁移到类似的场景中,以解决类 似的问题。 4 青少年编程能力 Python 语言概述 本部分面向青少年计算思维和逻辑思维培养而设计,以编程能力为核心培养目标,语法限于 Python 语言。本部分所定义的编程能力划分为四个等级。每级分别规定相应的能力目标、学业适应 性要求、核心知识点及所对应能力要求。依据本部分进行的编程能力培训、测试和认证,均应采用 Python 语言。 4.1 总体设计原则 青少年编程等级 Python 语言面向青少年设计,区别于专业技能培养,采用如下四个基本设计原则。 - 基本能力原则:以基本编程能力为目标,不涉及精深的专业知识,不以培养专业能力为导向,适 当增加计算机学科背景内容。 - 心理适应原则:参考发展心理学的基本理念,以儿童认知的形式运算阶段为主要对应期,符合青 少年身心发展的连续性、阶段性及整体性规律。 - 学业适应原则:基本适应青少年学业知识体系,与数学、语文、外语等科目衔接,不引入大学层 次课程内容体系。 - 法律适应原则:符合《中华人民共和国未成年人保护法》的规定,尊重、关心、爱护未成年人。 4.2 能力等级总体描述 青少年编程能力 Python 语言共包括四个等级,以编程思维能力为依据进行划分,等级名称、能力 目标和等级划分说明如表 1 所示。 表1 等 2 青少年编程能力 Python 语言的等级划分 级 能 力 目 标 等级划分说明 Python 一级 基本编程思维 具备以编程逻辑为目标的基本编程能力 Python 二级 模块编程思维 具备以函数、模块和类等形式抽象为目标的基本编程能力 Python 三级 基本数据思维 具备以数据理解、表达和简单运算为目标的基本编程能力 Python 四级 基本算法思维 具备以常见、常用且典型算法为目标的基本编程能力 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 补充说明:Python 一级包括对函数和模块的使用,例如,对标准函数和标准库的使用,但不包括 函数和模块的定义。Python 二级包括对函数和模块的定义。 青少年编程能力 Python 语言各级别代码量要求如表 2 所示。 表2 等 青少年编程能力 Python 语言的代码量要求 级 能 力 目 标 代码量要求说明 Python 一级 基本编程思维 能够编写不少于20行Python程序 Python 二级 模块编程思维 能够编写不少于50行Python程序 Python 三级 基本数据思维 能够编写不少于100行Python程序 Python 四级 基本算法思维 能够编写不少于100行Python程序,掌握10类算法 补充说明:这里的代码量指解决特定计算问题而编写单一程序的行数。各级别代码量要求建立在对 应级别知识点内容基础上。程序代码量作为能力达成度的必要但非充分条件。 5 “Python 一级”的详细说明 5.1 能力目标及适用性要求 Python 一级以基本编程思维为能力目标,具体包括如下 4 个方面: - 基本阅读能力:能够阅读简单的语句式程序,了解程序运行过程,预测运行结果; - 基本编程能力:能够编写简单的语句式程序,正确运行程序; - 基本应用能力:能够采用语句式程序解决简单的应用问题; - 基本工具能力:能够使用 IDLE 等展示 Python 代码的编程工具完成程序编写和运行。 Python 一级与青少年学业存在如下适用性要求: - 阅读能力要求:认识汉字并阅读简单中文内容,熟练识别英文字母、了解并记忆少量英文单词, 识别时间的简单表示; - 算术能力要求:掌握自然数和小数的概念及四则运算方法,理解基本推理逻辑,了解角度、简单 图形等基本几何概念; - 操作能力要求:熟练操作无键盘平板电脑或有键盘普通电脑,基本掌握鼠标的使用。 5.2 核心知识点说明 Python 一级包含 12 个核心知识点,如表 3 所示,知识点排序不分先后。 3 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 表3 编号 知识点名称 青少年编程能力“Python 一级”核心知识点说明及能力要求 知识点说明 能 力 要 求 1 程序基本编写方法 以IPO为主的程序编写方法 掌握“输入、处理、输出”程序编写方法,能够辨识各环节,具备理解程序的基本能力 2 Python基本语法元素 缩进、注释、变量、命名和保留字等基本语法 掌握并熟练使用基本语法元素编写简单程序,具备利用基本语法元素进行问题表达的能力 3 数字类型 整数类型、浮点数类型、真假无值及其相关操作 掌握并熟练编写带有数字类型的程序,具备解决数字运算基本问题的能力 4 字符串类型 字符串类型及其相关操作 掌握并熟练编写带有字符串类型的程序,具备解决字符串处理基本问题的能力 5 列表类型 列表类型及其相关操作 掌握并熟练编写带有列表类型的程序,具备解决一组数据处理基本问题的能力 6 类型转换 数字类型、字符串类型、列表类型之间的转换操作 理解类型的概念及类型转换的方法,具备表达程序类型与用户数据间对应关系的能力 7 分支结构 if、if-else、if-elif-else等构成的分支结构 掌握并熟练编写带有分支结构的程序,具备利用分支结构解决实际问题的能力 8 循环结构 for、while、continue和break等构成的循环结构 掌握并熟练编写带有循环结构的程序,具备利用循环结构解决实际问题的能力 9 异常处理 try-except构成的异常处理方法 掌握并熟练编写带有异常处理能力的程序,具备解决程序基本异常问题的能力 10 函数使用及标准函数A 函数使用方法,10个左右Python标准函数(见附录A) 掌握并熟练使用基本输入输出和简单运算为主的标准函数,具备运用基本标准函数的能力 11 Python标准库入门 基本的turtle库功能,基本的程序绘图方法 掌握并熟练使用turtle库的主要功能,具备通过程序绘制图形的基本能力 12 Python开发环境使用 Python开发环境使用,不限于IDLE 熟练使用某一种Python开发环境,具备使用Python开发环境编写程序的能力 4 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 5.3 核心知识点能力要求 Python 一级 12 个核心知识点对应的能力要求如表 3 所示。 5.4 标准符合性规定 Python 一级的符合性评测需要包含对 Python 一级各知识点的评测, 知识点宏观覆盖度要达到 100%。 根据标准符合性评测的具体情况,给出基本符合、符合、深度符合三种认定结论。基本符合指每个 知识点提供不少于 5 个具体知识内容,符合指每个知识点提供不少于 8 个具体知识内容,深度符合指每 个知识点提供不少于 12 个具体知识内容。具体知识内容要与知识点实质相关。 用于交换和共享的青少年编程能力等级测试及试题应符合 GB/T 29802—2013 的规定。 5.5 能力测试要求 与 Python 一级相关的能力测试在标准符合性规定的基础上应明确考试形式和考试环境,考试要求 如表 4 所示。 表4 内 青少年编程能力“Python 一级”能力测试的考试要求 容 描 述 考试形式 理论考试与编程相结合 考试环境 支持Python程序的编写和运行环境,不限于单机版或Web网络版 考试内容 满足标准符合性(5.4节)规定 6 “Python 二级”的详细说明 6.1 能力目标及适用性要求 Python 二级以模块编程思维为能力目标,具体包括如下 4 个方面: - 基本阅读能力:能够阅读模块式程序,了解程序运行过程,预测运行结果; - 基本编程能力:能够编写简单的模块式程序,正确运行程序; - 基本应用能力:能够采用模块式程序解决简单的应用问题; - 基本调试能力:能够了解程序可能产生错误的情况、理解基本调试信息并完成简单程序调试。 Python 二级与青少年学业存在如下适用性要求: - 前序能力要求:具备 Python 一级所描述的适用性要求; - 数学能力要求:了解以简单方程为内容的代数知识,了解随机数的概念; - 操作能力要求:熟练操作电脑,熟练使用鼠标和键盘。 6.2 核心知识点说明 Python 二级包含 12 个核心知识点,如表 5 所示,知识点排序不分先后。其中,名称中标注“(基 本)”的知识点表明该知识点相比专业说法仅做基础性要求。 5 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 表5 编号 知识点名称 青少年编程能力“Python 二级”核心知识点说明及能力要求 知识点说明 能 力 要 求 1 模块化编程 以代码复用、程序抽象、自顶向下设计为主要内容 理解程序的抽象及结构及自顶向下设计方法,具备利用模块化编程思想分析实际问题的能力 2 函数 函数的定义、调用及使用 掌握并熟练编写带有自定义函数和函数递归调用的程序,具备解决简单代码复用问题的能力 3 递归及算法 递归的定义及使用、算法的概念 掌握并熟练编写带有递归的程序,了解算法的概念,具备解决简单迭代计算问题的能力 4 文件 基本的文件操作方法 掌握并熟练编写处理文件的程序,具备解决数据文件读写问题的能力 5 (基本)模块 Python模块的基本概念及使用 理解并构建模块,具备解决程序模块之间调用问题及扩展规模的能力 6 (基本)类 面向对象及Python类的简单概念 理解面向对象的简单概念,具备阅读面向对象代码的能力 7 (基本)包 Python包的概念及使用 理解并构建包,具备解决多文件程序组织及扩展规模问题的能力 8 命名空间及作用域 变量命名空间及作用域,全局和局部变量 熟练并准确理解语法元素作用域及程序功能边界,具备界定变量作用范围的能力 9 Python第三方库获取 根据特定功能查找并安装第三方库 基本掌握Python第三方库的查找和安装方法,具备搜索扩展编程功能的能力 10 Python第三方库使用 jieba库、pyinstaller库、wordcloud库等第三方库 基本掌握Python第三方库的使用方法,理解第三方库的多样性,具备扩展程序功能的基本能力 11 标准函数B 5个标准函数(见附录A)及查询使用其他函数 掌握并熟练使用常用的标准函数,具备查询并使用其他标准函数的能力 12 基本的Python标准库 random库、time库等 掌握并熟练使用3个Python标准库,具备利用标准库解决问题的简单能力 6 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 6.3 核心知识点能力要求 Python 二级 12 个核心知识点对应的能力要求如表 5 所示。 6.4 标准符合性规定 Python 二级的符合性评测需要包含对 Python 二级各知识点的评测, 知识点宏观覆盖度要达到 100%。 根据标准符合性评测的具体情况,给出基本符合、符合、深度符合三种认定结论。基本符合指每个 知识点提供不少于 5 个具体知识内容,符合指每个知识点提供不少于 8 个具体知识内容,深度符合指每 个知识点提供不少于 12 个具体知识内容。具体知识内容要与知识点实质相关。 用于交换和共享的青少年编程能力等级测试及试题应符合 GB/T 29802—2013 的规定。 6.5 能力测试要求 与 Python 二级相关的能力测试在标准符合性规定的基础上应明确考试形式和考试环境,考试要求 如表 6 所示。 表6 内 青少年编程能力“Python 二级”能力测试的考试要求 容 描 述 考试形式 理论考试与编程相结合 考试环境 支持Python程序运行的环境,支持文件读写,不限于单机版或Web网络版 考试内容 满足标准符合性(6.4节)规定 7 “Python 三级”的详细说明 7.1 能力目标及适用性要求 Python 三级以基本数据思维为能力目标,具体包括如下 4 个方面: - 基本阅读能力:能够阅读具有数据读写、清洗和处理功能的简单 Python 程序,了解程序运行过 程,预测运行结果; - 基本编程能力:能够编写具有数据读写、清洗和处理功能的简单 Python 程序,正确运行程序; - 基本应用能力:能够采用 Python 程序解决具有数据读写、清洗和处理的简单应用问题; - 数据表达能力:能够采用 Python 语言对各类型数据进行正确的程序表达。 Python 三级与青少年学业存在如下适用性要求: - 前序能力要求:具备 Python 二级所描述的适用性要求; - 数学能力要求:掌握集合、数列等基本数学概念; - 信息能力要求:掌握比特、字节、Unicode 编码等基本信息概念。 7.2 核心知识点说明 Python 三级包含 12 个核心知识点,如表 7 所示,知识点排序不分先后。其中,名称中标注“(基 本)”的知识点表明该知识点相比专业说法仅做基础性要求。 7 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 表7 编号 8 知识点名称 青少年编程能力“Python 三级”核心知识点说明及能力要求 知识点说明 能 力 要 求 1 序列与元组类型 序列类型、元组类型及其使用 掌握并熟练编写带有元组的程序,具备解决有序数据组的处理问题的能力 2 集合类型 集合类型及其使用 掌握并熟练编写带有集合的程序,具备解决无序数据组的处理问题的能力 3 字典类型 字典类型的定义及基本使用 掌握并熟练编写带有字典类型的程序,具备处理键值对数据的能力 4 数据维度 数据的维度及数据基本理解 理解并辨别数据维度,具备分析实际问题中数据维度的能力 5 一维数据处理 一维数据表示、读写、存储方法 掌握并熟练编写使用一维数据的程序,具备解决一维数据处理问题的能力 6 二维数据处理 二维数据表示、读写、存储方法及CSV格式的读写 掌握并熟练编写使用二维数据的程序,具备解决二维数据处理问题的能力 7 高维数据处理 以JSON为格式的高维数据表示、读写方法 基本掌握编写使用JSON格式数据的程序,具备解决数据交换问题的能力 8 文本处理 以基本re库为内容的文本查找、匹配等基本方法 基本掌握编写文本处理的程序,具备解决基本文本查找和匹配问题的能力 9 数据爬取 以requests库为内容的页面级数据爬取方法 基本掌握网络爬虫程序的基本编写方法,具备解决基本数据获取问题的能力 10 (基本)向量数据 向量数据理解及以列表和Numpy为方式的多维向量数据表达 掌握向量数据的基本表达及处理方法,具备解决向量数据计算问题的基本能力 11 (基本)图像数据 图像数据理解及以PIL库为内容的基本图像数据处理方法 掌握图像数据的基本处理方法,具备解决图像数据问题的能力 12 (基本)HTML数据 HTML数据格式理解及HTML数据的基本处理方法 掌握HTML数据的基本处理方法,具备解决网页数据问题的能力 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 7.3 核心知识点能力要求 Python 三级 12 个核心知识点对应的能力要求如表 7 所示。 7.4 标准符合性规定 Python 三级的符合性评测需要包含对 Python 三级各知识点的评测, 知识点宏观覆盖度要达到 100%。 根据标准符合性评测的具体情况,给出基本符合、符合、深度符合三种认定结论。基本符合指每个 知识点提供不少于 5 个具体知识内容,符合指每个知识点提供不少于 8 个具体知识内容,深度符合指每 个知识点提供不少于 12 个具体知识内容。具体知识内容要与知识点实质相关。 用于交换和共享的青少年编程能力等级测试及试题应符合 GB/T 29802—2013 的规定。 7.5 能力测试要求 与 Python 三级相关的能力测试在标准符合性规定的基础上应明确考试形式和考试环境,考试要求 如表 8 所示。 表8 内 青少年编程能力“Python 三级”能力测试的考试要求 容 描 述 考试形式 理论考试与编程相结合 考试环境 支持Python程序运行的环境,支持文件读写,不限于单机版或Web网络版 考试内容 满足标准符合性(7.4节)规定 8 “Python 四级”的详细说明 8.1 目标能力及适用性要求 Python 四级以基本算法思维为能力目标,具体包括如下 4 个方面: - 算法阅读能力:能够阅读带有算法的 Python 程序,了解程序运行过程,预测运行结果; - 算法描述能力:能够采用 Python 语言描述算法; - 算法应用能力:能够根据掌握的算法采用 Python 程序解决简单计算问题; - 算法评估能力:评估算法在计算时间和存储空间的效果。 Python 四级与青少年学业存在如下适用性要求: - 前序能力要求:具备 Python 三级所描述的适用性要求; - 数学能力要求:掌握简单统计、二元方程等基本数学概念; - 信息能力要求:掌握基本的进制、文件路径、操作系统使用等信息概念。 8.2 核心知识点说明 Python 四级包含 12 个核心知识点,如表 9 所示,知识点排序不分先后。其中,名称中标注“(基 本)”的知识点表明该知识点相比专业说法仅做基础性要求。 Python 四级与 Python 一级、二级、三级之间存在整体递进关系,但其中第 1 到第 5 知识点不要求 Python 三级基础,可以在 Python 一级之后与 Python 二级或 Python 三级并行学习。 9 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 表9 编号 知识点名称 青少年编程能力“Python 四级”核心知识点说明及能力要求 知识点说明 能 力 要 求 1 堆栈队列 堆、栈、队列等结构的基本使用 了解数据结构的概念,具备利用简单数据结构分析问题的基本能力 2 排序算法 不少于3种排序算法 掌握排序算法的实现方法,辨别算法计算和存储效果,具备应用排序算法解决问题的能力 3 查找算法 不少于3种查找算法 掌握查找算法的实现方法,辨别算法计算和存储效果,具备应用查找算法解决问题的能力 4 匹配算法 不少于3种匹配算法,至少含1种多字符串匹配算法 掌握匹配算法的实现方法,辨别算法计算和存储效果,具备应用匹配算法解决问题的能力 5 蒙特卡洛算法 蒙特卡洛算法及应用 理解蒙特卡洛算法的概念,具备利用基本蒙特卡洛算法分析和解决问题的能力 6 (基本)分形算法 基于分形几何,不少于3种算法 了解分形几何的概念,掌握分形几何的程序实现,具备利用分形算法分析问题的能力 7 (基本)聚类算法 不少于3种聚类算法 理解并掌握聚类算法的实现,具备利用聚类算法分析和解决简单应用问题的能力 8 (基本)预测算法 不少于3种以线性回归为基础的预测算法 理解并掌握预测算法的实现,具备利用基本预测算法分析和解决简单应用问题的能力 9 (基本)调度算法 不少于3种调度算法 理解并掌握调度算法的实现,具备利用基本调度算法分析和解决简单应用问题的能力 10 (基本)分类算法 不少于3种简单的分类算法 理解并掌握简单分类算法的实现,具备利用基本分类算法分析和解决简单应用问题的能力 11 (基本)路径算法 不少于3种路径规划算法 理解并掌握路径规划算法的实现,具备利用基本路径算法分析和解决简单应用问题的能力 12 算法分析 计算复杂性,以时间、空间为特点的基本算法分析 掌握计算复杂性的方法,具备算法复杂性分析能力 10 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 8.3 核心知识点能力要求 Python 四级 12 个核心知识点对应的能力要求如表 9 所示。 8.4 标准符合性规定 Python 四级的符合性评测需要包含对 Python 四级各知识点的评测,知识点宏观覆盖度要达到 100%。 根据标准符合性评测的具体情况,给出基本符合、符合、深度符合三种认定结论。基本符合指每个知识 点提供不少于 5 个具体知识内容,符合指每个知识点提供不少于 8 个具体知识内容,深度符合指每个知 识点提供不少于 12 个具体知识内容。具体知识内容要与知识点实质相关。 用于交换和共享的青少年编程能力等级测试及试题应符合 GB/T 29802—2013 的规定。 8.5 能力测试要求 与 Python 四级相关的能力测试在标准符合性规定的基础上应明确考试形式和考试环境,考试要求 如表 10 所示。 表 10 内 青少年编程能力“Python 四级”能力测试的考试要求 容 考试形式 考试环境 考试内容 描 述 理论考试与编程相结合 支持Python程序运行的环境,支持文件读写,不限于单机版或Web网络版 能够统计程序编写时间、提交次数、运行时间及内存占用 满足标准符合性(8.4节)规定 11 T/CERACU/AFCEC/SIA/CNYPA 100.2—2019 附录 A (资料性附录) 标准范围的 Python 标准函数列表 函 数 描 述 级 别 input([x]) 从控制台获得用户输入,并返回一个字符串 Python一级 print(x) 将x字符串在控制台打印输出 Python一级 pow(x,y) x的y次幂,与x**y相同 Python一级 round(x[,n]) 对x四舍五入,保留n位小数 Python一级 max(x1,x2…,xn) 返回x1,x2…,xn的最大值,n没有限定 Python一级 min(x1,x2…,xn) 返回x1,x2…,xn的最小值,n没有限定 Python一级 sum(x1,x2…,xn) 返回参数x1,x2…,xn的算术和 Python一级 len() 返回对象(字符、列表、元组等)长度或项目个数 Python一级 range(x) 返回的是一个可迭代对象(类型是对象) Python一级 eval(x) 执行一个字符串表达式x,并返回表达式的值 Python一级 int(x) 将x转换为整数,x可以是浮点数或字符串 Python一级 float(x) 将x转换为浮点数,x可以是整数或字符串 Python一级 str(x) 将x转化为字符串 Python一级 list(x) 将x转换为列表 Python一级 open(x) 打开一个文件,并返回文件对象 Python二级 abs(x) 返回x的绝对值 Python二级 type(x) 返回参数x的数据类型 Python二级 ord(x) 返回字符对应的Unicode值 Python二级 chr(x) 返回Unicode值对应的字符 Python二级 sorted(x) 排序操作 Python二级(查询) tuple(x) 将x转换为元组 Python二级(查询) set(x) 将x转换为集合 Python二级(查询) 12