大家好,我是小宇爸爸老张。过去二十年一直在做软件开发,写过C++、golang,也用Python做过不少项目。这个寒假,我决定陪儿子一起备战全国青少年编程等级考试(Python四级),并用公众号记录我们的学习过程——既是复盘,也是分享。我们计划用15–20篇博客,全程记录这段学习旅程:包括错题分析、学习资源整理和心得反思等等。

昨天我们用11道选择题做了摸底,今天进入第二天:判断题专项训练。我特意整理了一份11个判断题的小卷子:其中8道来自真题,另外3道则针对昨天暴露的薄弱点(f-string 和 range 行为)专门设计。

小宇今天答对了8道,按百分制算大约72分。错了以下三道,做过多年软件编程开发的朋友们,不妨也来试试:这三道题你能全部做对吗?

第1题

下面的Python代码执行后将输出 -100。( )

 tnt = 0
 for i in range(-100, 100):
     tnt += i
 print(tnt)

第6题

将下面代码中的 range(-10) 改为 range(10) 后,执行结果相同。( )

 tnt = 0
 for i in range(-10):
     if i < 0:
         i = -i
     tnt += i
 print(tnt)

第7题

鸿蒙是华为公司开发的一款操作系统,那么它能够将正确的源程序翻译成目标程序,并运行。( )

答案与解析

第1题:正确(√)

range(-100, 100) 是左闭右开区间,包含 -100,而不包含 100,因此计算结果为-100。

第6题:错误(×)

这道题考察对 range 边界行为的理解:

  • range(-10):默认从0开始,步长为1,终止于-10。由于 0 > -10 且步长为正,无法生成任何值 → 循环体一次都不执行 → tnt = 0

  • range(10):生成 0 到 9,全部非负,if i < 0 永远不成立,直接累加得 0+1+…+9 = 45

显然,0 ≠ 45,结果不同。

所以“结果相同”的说法是错误的。

注意:range 在参数无效时不会报错,而是返回空迭代器——这种“静默失败”正是易错点。

第7题:错误(×)

这是一个跨学科概念题:鸿蒙(HarmonyOS)确实是华为开发的操作系统;但 将源程序翻译成目标程序 (如把 .py 变成字节码或机器码)是由 编译器或解释器 完成的,比如 Python 解释器、GCC 编译器等;操作系统的职责是 管理硬件、调度进程、提供运行环境 ,并不直接参与“翻译”过程。

因此,说“操作系统能翻译源程序”是 概念混淆 。题干说法错误。

这类题看似简单,实则考验对“编译/解释”与“运行环境”边界的清晰认知。

下一期,小宇将挑战第一组Python一级编程题,看看理论能否顺利落地为代码。如果你也希望获取我整理的这套练习集,欢迎私信留言,习题在逐步整理中!

Logo

讨论HarmonyOS开发技术,专注于API与组件、DevEco Studio、测试、元服务和应用上架分发等。

更多推荐