全国计算机等级考试二级Python易错真题详解-流程控制-单选题

文摘   教育   2024-10-06 15:35   江苏  

结束了漫长而炎热的夏天,终于迎来了凉爽的、甚至有些寒冷的秋天。

如果你错过了和煦的春光,那么就不要再错过惬意的秋风了🙂,一起来学习下今天的知识吧!


全国计算机等级考试二级Python易错真题详解-流程控制-单选题

流程控制(单选题)

说明:

  • 本文中的题目,全都来自全国计算机等级考试二级Python语言程序设计考试的真题,且都为易错题。题干最后如有编号,则是 python123 平台上的题号,以方便学生查找和索引。
  • 在满分为 100 分的二级Python考试中,单选题总共占 40 分。本文为Python语言中流程控制相关的解析,这部分一般占 3 - 5分 左右。
  • 面向对象:Python 学习爱好者、Python 二级备考的大学生

之前的相关文章在这儿:

以下关于控制结构的描述,错误的是(  )。(#168681)

A. Python 的单分支结构里,包含 else 语句

B. Python 的多分支结构,指的是既包含 else 语句块,也包含 elif 语句块

C. 使用 range(1,10)函数,指定语句块的循环次数是9次

D. Python 的 for 循环结构是对遍历结构各元素进行处理

参考答案:A

解析:

Python 的单分支结构里,包含 else 语句 错误。因为 Python 的单分支结构使用 if 保留字对条件进行判断,没有用到 else 语句,不满足 if 条件的话就直接跳过 if 中的语句,然后继续执行后面的语句。如下例就是一个单分支结构:

if a > 0:    print('a是一个正数')

二分支结构使用 if-else 保留字对条件进行判断;

多分支结构使用 if-elif-else 保留字对多个相关条件进行判断。

关于Python分支结构的描述,错误的选项是(  )。(#169696)

A. 多分支结构可以用switch语句表示

B. 二分支结构可以用if else语句表示

C. 多分支结构可以用if elif else语句表示

D. 单分支结构可以用if语句表示

参考答案:A

解析:

选项 多分支结构可以用switch语句表示 错误。因为在 Python 的 3.10 版本之前,没有类似 C/C++/Java 等语言中的 switch-case 语法结构。可以利用 if-elif-else 等多分支结构,或者 字典+函数 等手段来代替。

(二级超纲内容)感兴趣的同学,也可看下 Python 3.10 中引入的新的 match-case 语法结构,类似 switch-case,但却更加强大,具体用法和案例可以看官方文档:https://peps.python.org/pep-0636/。

关于Python二分支精简结构的表示,正确的选项是(  )。(#168865)

A. 条件 if 表达式1 else 表达式2

B. 表达式1 if 表达式2 else 条件

C. 表达式1 if 条件 else 表达式2

D. 表达式1 if 条件:表达式2 else

参考答案:C

解析:

在Python语言中,二分支结构由 ifelse 组成,其精简模式也是采用 ifelse 两个保留字组成,是目前Python中唯一的一个三元运算符(ternary operator)。

关于三元运算符的那些秘密,详情请查看之前的文章

关于Python中for循环的描述,正确的选项是(  )。(#168879)

A. for循环内语句块的执行次数一定大于1

B. 能用for循环实现字符串里每个字符的遍历

C. for循环能够实现列表的遍历,不能实现字典的遍历

D. for循环不能与break和continue保留字联合使用

参考答案:B

解析:

选项 for循环内语句块的执行次数一定大于1 错误。因为当 for 循环遍历的循环对象(可迭代对象)中没有元素时,此时for循环内部语句块不执行,如下range(-1, -10)等价于range(-1,-10,1),步长为1取不到值,除非最后一个参数(步长)改成-1才行:

for i in range(-1,-10):    print(i)

选项 能用for循环实现字符串里每个字符的遍历 正确。因为字符串也是可迭代对象, for 循环可以对字符串进行遍历,字符串中有多少个字符,循环就能执行多少轮。

选项 for循环能够实现列表的遍历,不能实现字典的遍历 错误。因为 for 循环也能对字典对象进行遍历,只不过在遍历时,遍历的是字典的键(key),而不能直接遍历字典的值(Value)出来。如果想要遍历值,可以调用字典的 values() 方法,先取出所有的值,然后再对这些值进行遍历。

选项 for循环不能与break和continue保留字联合使用 错误。因为 for 循环可以与 breakcontinue 保留字使用,用于对循环的执行、退出等进行控制。

以下关于控制结构的描述,错误的是(  )。(#168636)

A. break的功能是跳出当前循环控制块

B. 在for结构中使用continue,会开始遍历下一个元素

C. Python的多分支结构里,可以包含多个elif语句

D. break也可用于跳出try-except控制块

参考答案:D

解析:

break也可用于跳出try-except控制块 是错的,因为 break 只能 用于跳出(终止)最近的 for 或者 while 循环代码块,而不能跳出 try-except 异常控制代码块。

关于Python的循环控制,以下描述错误的是(  )。(#169650)

A. break和continue可以用于遍历循环和无限循环

B. else也可以与循环搭配使用

C. break将退出所有层次的循环

D. continue将结束当次循环

参考答案:C

解析:

选项 break和continue可以用于遍历循环和无限循环 正确。breakcontinue 可以用于 for 循环(遍历) 和 while 循环(无限)。

选项 continue将结束当次循环 正确。当 forwhile 循环中没有遇到 break 而正常终止后(遇到 continue 也算正常终止),如果存在 else 子句的话,会再运行 else 子句作为“奖励”。

选项 break将退出所有层次的循环错误 的,其它都对。因为 break 只能退出最近层次的循环,而不能退出所有层次的循环;要想从多层嵌套循环中退出,可以使用其它技巧,如通过标志变量、异常以及函数的return语句等方式。

选项 continue将结束当次循环 是对的,continue 用来结束本轮循环,本轮循环中 continue 后面的其它语句不再执行,然后再重头开始进行下一轮循环。

关于异常处理的描述,错误的选项是(  )。(#169699)

A except后面可以增加异常类型,进而区分不同异常进行处理

B try、except、else、finally都可以用于异常处理

C. 异常处理中try是必须的,except并不必须

D try和except都是异常处理保留字

参考答案:C

解析:

这题其实不够严谨。Python语言中通常使用保留字 try 和 except 进行异常处理,这两个关键字一般同时出现,但 语法上 也可以 只有 try-finally 出现, except 语法上可以没有 ,类似如下代码是正确的:

try:    print(a)finally:    print('不管有无异常,都会输出这句。')

但此时,因为变量 a 之前没有被定义、因此第二行输出 a 时,会产生 NameError ,但因为没有 except 子句,发生异常后程序并没有及时捕获并处理,所以还是建议大家把 try-except 搭配起来使用,这样才有意义

天马行空的大杂烩
“我不能选择那最好的,是那最好的选择我。”-泰戈尔 💖欢迎来到这里。我天马行空地写,您随心所欲地看。欢迎就我们感兴趣的内容交流学习😀🤝
 最新文章