找出 Python 程式碼裡的錯誤

找出有缺陷的那一行

下面这个函数几乎是对的,只有一行写错了。读一读它该做什么,看看它出错的例子,然后点出那一行。

「找出缺陷」怎么玩?

每个关卡都会给出一个几乎正确的短函数、它本该做什么,以及一个出错的例子。恰好有一行是错的,点它。

一共 100 关,难度按缺陷的种类递增,而不是按代码的长度:前面是运算符反了或常量写错,后面是区间差一,或者 return 掉进了循环里面。

为什么代码是英文的?

因为在任何编程课程里,关键字和标识符都是英文的,把 for 或 return 翻译过来只会教错。说明函数该做什么的那句话会翻译,代码不会。

这些缺陷真的是缺陷吗?

是的,而且这是测出来的,不是假设的。每个植入的缺陷都会和正确版本在多组输入上运行,只有在某处结果不同才会成为关卡。手写的 57 个缺陷里,有 4 个什么都没改变,被扔掉了。

需要会 Python 吗?

会有帮助,但这些函数是挑过的,见过循环和 if 的人都读得懂。不用库,也没有超出基础的语法。

我的进度会保存吗?

你解到的最远关卡保存在你自己的浏览器里。没有账号,也不会把任何东西发到别处。