孩子 Python 入门之后,要不要考个级、考哪一级、怎么准备?这三个问题早晚要面对。前面写猜数字、写 Turtle 画图的时候我都绕开了这个话题,因为要回答它,得先把 GESP 这套认证本身讲清楚。今天专门写一篇。
先把结论放在前面:如果孩子 Python 已经入门(能独立写个猜数字这种小对话程序),GESP Python 二级或三级是合适的起点;一年有四次考试机会,考级这件事值得做,但别把它当成升学的筹码。它是一把尺子,不是一张门票。
GESP 是什么,为什么值得看
GESP 是 CCF(中国计算机学会)出的编程能力等级认证,和 CSP-J/S 信奥赛是同一个「娘家」。共八个级别,分 C++、Python、图形化(Scratch)三个方向。我们关心 Python 一到四级,对应的大致是小学中高年级到初中这段。
为什么说它值得看?因为出题的人和出信奥赛题的人是同一拨。GESP 高级别的内容和 CSP-J 有明显重叠,达到规定等级还可以申请与 CSP-J/S 衔接、免第一轮认证。家里如果有信奥打算,这条路等于提前铺了一块砖。具体衔接政策每年有微调,报名前到 gesp.ccf.org.cn 看当期通知即可。
考试一年四次,一般落在 3 月、6 月、9 月、12 月前后。完全不用赶某一次,这一点比很多商业考级从容。
一到四级各长什么样
四个级别是一条平滑的坡,不是四级台阶。用我家陪做项目的说法,一级是「能让屏幕动起来」,往后每一级多一件趁手的工具。
一级考的是地基:变量、输入输出、三种基本结构(顺序、分支、循环),甚至还有 Turtle 画图。之前写过的那只小海龟,在这里直接变成了考题。二级把分支和循环往深里考,开始出现嵌套。三级是个明显的坎:列表和字典的高级操作(切片、推导式)、函数(定义、参数、作用域)、文件读写都会进来。四级再往上,递归和基础算法登场。
题型结构以某次三级真题为例:选择题 30 道、每道 2 分,编程题 2 道、每道 20 分,满分 100。客观题考语法细节和读程序,编程题一道偏数据处理(比如读文件、用字典统计、排序输出),一道偏算法实现。机考,代码由评测机判分,跑不对就是不得分,没有步骤分。这一点和信奥复赛一个逻辑,也是它比「背题库」式考级值钱的地方。
真题里的三个高频陷阱
有同行做过三级真题的错题统计,三个坑值得提前知道。第一个,可变对象当默认参数------大约四成考生栽在这里。看一眼这段:
def add_item(x, bag=[]):
bag.append(x)
return bag
print(add_item(1))
print(add_item(2))
很多人以为两次调用各返回一个新列表,实际上 bag 只在函数定义时创建了一次,两次调用共用同一个列表,第二次输出是 [1, 2]。默认参数在定义时求值,不是每次调用时求值------这是 Python 的经典暗坑,GESP 真题里反复出现。
第二个,函数内给变量赋值却没有先定义,触发 UnboundLocalError。孩子以为全局变量拿来就能改,评测机直接报错。第三个,切片:lst[::-1] 是反转、lst[1:3] 不含尾,客观题年年绕着这几个写法转。
这三个坑的共同点:都不难,但都要求孩子真的在电脑上跑过、报过错。所以备考的核心动作不是刷题库,是写代码、跑代码、看报错。
一条可执行的备考路线
给你一份能直接照着做的时间表。
- 考前 2 到 3 个月启动:先拿一套对应级别的真题掐时间做一遍,摸清孩子的真实位置------这个动作比任何规划都值钱,做完你就知道该报哪级。
- 分模块补漏:对照考纲,把语法、列表字典、函数、文件操作逐块过,字典和列表的常用方法练到不查手册能写。
- 考前 1 个月刷真题:官方真题页历次试题都公开,至少完整做 5 套;选择题控制在 40 分钟内,每道编程题留 25 分钟,含 5 分钟检查。
- 节奏:一般每 3 到 6 个月进一级。别跳级贪快,三级那道坎靠的是真功夫,跳过去的孩子到四级会原形毕露。
报名费以官网公示为准,各等级不同,报名时在线缴。
值不值得考:说点实在的
先把丑话说完:GESP 证书不是升学加分项,没有哪所学校因为它录取谁。个别地区的科技特长生材料里它可以作为参考,但政策各地差异很大,别为了「有用」去考。
它真正的价值有三个。一是检验:比家长自己的感觉客观,考过三级说明列表、字典、函数这些真的过关了。二是衔接:与 CSP-J/S 同出 CCF,达到规定等级可申请免第一轮,对走信奥的孩子是实打实的便利。三是习惯:机考评测机的判分方式,逼着孩子养成「代码要跑对才算写完」的习惯------这个习惯比证书值钱,也是我让娃早点接触这类机考的原因。
一句话总结:把 GESP 当尺子用,别当门票用。按 3 到 6 个月一级的节奏,四级考完,孩子手里就有了一条完整的 Python 基本功线,往上接信奥还是往应用走,选择权都在他自己手上。
下一篇回到分岔路口本身:什么时候该从 Python 换 C++?信奥选手的第一个分水岭,判断信号我整理了五条,正在犹豫的家庭可以蹲一蹲。