建议的价值取决于它是为哪一年的考试写的。 照着某条复习技巧做之前,先弄清它假设的是哪一份考纲,再与 Cambridge 为你自己考试年份列出的文件对照。
计算机科学这门课,你怎样写出解法,包括写法规范,本身就是要练的一部分。为较晚或不同版本写的网上指南,可能悄悄把你推向你的考试并不采用的习惯。适用考纲的伪代码和 Python 过渡与执行两个主题说明了该去哪里核对。
怎么判断建议是否适合我的考试年份?
对任何指南、视频或笔记套用四个快速检查:
- 有没有标明考纲年份? 没有的话,标记为“未核对”。
- 它说的是仅限 Python、仅限伪代码,还是两者都可? 记下来。
- 你自己的考纲文件是否也这样说? 打开 Cambridge 的 0478 页面,读你那一年的部分。
- 你自己那一年的样卷或往年题是否用这种写法? 找不到就问老师或考试中心。
只有四项都通过的建议,才放进你的主复习文件。
例题
一位学生读到一条技巧:“循环一律写成 for i in range(1, 6),用 i 做列表索引。”他的列表里有四个分数,而考题说明数组位置从 1 开始编号。
第一步,这条 Python 技巧做了什么? range(1, 6) 给出 1、2、3、4、5,共五个值,最后一个是 5,不是 6。
第二步,与数据对照。 列表里有四个分数。含四个元素的 Python 列表索引是 0 到 3,所以索引 4 和 5 不存在,这条技巧就出错了。
第三步,与题目对照。 题目把位置编号为 1 到 4。循环需要访问 1、2、3、4,共四次,所以上限必须是 4。
第四步,按题目改写。 改正后的思路是:访问位置 1 到 4,第一个分数在位置 1。之后如果你改写成 Python 来测试,记得同一个第一个分数在索引 0。
所以这条技巧作为 Python 并没有错。错在把它当成通用规则,忽略了题目里的约定。
要避免的错误
错误做法: 把 Python 的技巧照搬进书面答案,却没有检查题目是否规定了自己的约定。
技巧本身可能是完全正确的 Python。问题在于不匹配:考试按题目的原样来评判你的理解,所以你的循环范围、索引和写法,必须符合该题和你的考纲所规定的。
更正: 读题的前两行,看有没有规定约定(数组从哪里开始、用什么写法)。按它来写解答。之后再用 Python 做测试工具,而不是把它当作你要交的内容。
把两个版本分开的简单办法
在笔记里准备一页两栏的对照表:
| 概念 | 我的考试中的约定 | 我的 Python 测试中的约定 |
|---|---|---|
| 数组的第一个位置 | 按题目规定 | 索引 0 |
| 访问 4 个元素的循环 | 上限由题目决定 | range(4) 访问 0 到 3 |
| 答案中的写法 | 按我这一年的考纲所示 | Python 语法 |
你可以在 Python 推理沙盒里安全地测试小算法,并在伪代码跟踪训练器里跟踪同样的步骤。请把各工具页面上写明的写法限制当作边界,因为你自己那一年的写法需要对照官方来源核对。
自测
1. 一份指南没有标明考纲年份。你怎么做?
Show answer
把这条建议标记为未核对,找出这份指南假设的是哪一年的考纲,并在使用前与 Cambridge 为你考试年份列出的考纲文件对照。2. 用 Python 的 range(2, 7) 来访问列表位置。它给出多少个值?最后一个是什么?
Show answer
给出 2、3、4、5、6,共五个值。最后一个是 6,因为结束值 7 不包含在内。3. 题目规定数组位置从 1 开始,数组有 6 个元素。最后一个位置是几?
Show answer
位置 6。从 1 开始计数,六个元素占据位置 1 到 6。在含六个元素的 Python 列表中,最后的索引是 5。接下来
先用 0478 代码指南确认你的路线,再读把 2029 年仅限 Python 的评估指引与较早要求分开,学习如何把按年份区分的建议分开。在选择写法前先确认考试年份中练习写法方面。
一位一对一的老师可以把你的每一条笔记与已确认的年份逐一对照。这正是一对一线上计算机科学补习所提供的,从 RM80 起的付费试听课开始。