全国计算机等级考试二级Python易错真题详解-流程控制-单选题
itomcoil 2025-01-02 17:10 16 浏览
流程控制(单选题)
说明:
- 本文中的题目,全都来自全国计算机等级考试二级Python语言程序设计考试的真题,且都为易错题。题干最后如有编号,则是 python123 平台上的题号,以方便学生查找和索引。
- 在满分为 100 分的二级Python考试中,单选题总共占 40 分。本文为Python语言中流程控制相关的解析,这部分一般占 3 - 5分 左右。
- 面向对象:Python 学习爱好者、Python 二级备考的大学生
之前的相关文章在这儿:
- 全国计算机等级考试二级Python易错真题详解-Python语言基础
- Python中为什么round(1.5)和round(2.5)都等于2?round()函数详解
- 全国计算机等级考试二级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语言中,二分支结构由 if 和 else 组成,其精简模式也是采用 if 和 else 两个保留字组成,是目前Python中唯一的一个三元运算符(ternary operator)。
关于三元运算符的那些秘密,详情请查看这篇文章:https://www.toutiao.com/article/7419993088547897893/
关于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 循环可以与 break 和 continue 保留字使用,用于对循环的执行、退出等进行控制。
以下关于控制结构的描述,错误的是( )。 (#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可以用于遍历循环和无限循环 正确。 break 和 continue 可以用于 for 循环(遍历) 和 while 循环(无限)。
选项 continue将结束当次循环 正确。当 for 或 while 循环中没有遇到 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 搭配起来使用,这样才有意义。
相关推荐
- selenium(WEB自动化工具)
-
定义解释Selenium是一个用于Web应用程序测试的工具。Selenium测试直接运行在浏览器中,就像真正的用户在操作一样。支持的浏览器包括IE(7,8,9,10,11),MozillaF...
- 开发利器丨如何使用ELK设计微服务中的日志收集方案?
-
【摘要】微服务各个组件的相关实践会涉及到工具,本文将会介绍微服务日常开发的一些利器,这些工具帮助我们构建更加健壮的微服务系统,并帮助排查解决微服务系统中的问题与性能瓶颈等。我们将重点介绍微服务架构中...
- 高并发系统设计:应对每秒数万QPS的架构策略
-
当面试官问及"如何应对每秒几万QPS(QueriesPerSecond)"时,大概率是想知道你对高并发系统设计的理解有多少。本文将深入探讨从基础设施到应用层面的解决方案。01、理解...
- 2025 年每个 JavaScript 开发者都应该了解的功能
-
大家好,很高兴又见面了,我是"高级前端进阶",由我带着大家一起关注前端前沿、深入前端底层技术,大家一起进步,也欢迎大家关注、点赞、收藏、转发。1.Iteratorhelpers开发者...
- JavaScript Array 对象
-
Array对象Array对象用于在变量中存储多个值:varcars=["Saab","Volvo","BMW"];第一个数组元素的索引值为0,第二个索引值为1,以此类推。更多有...
- Gemini 2.5编程全球霸榜,谷歌重回AI王座,神秘模型曝光,奥特曼迎战
-
刚刚,Gemini2.5Pro编程登顶,6美元性价比碾压Claude3.7Sonnet。不仅如此,谷歌还暗藏着更强的编程模型Dragontail,这次是要彻底翻盘了。谷歌,彻底打了一场漂亮的翻...
- 动力节点最新JavaScript教程(高级篇),深入学习JavaScript
-
JavaScript是一种运行在浏览器中的解释型编程语言,它的解释器被称为JavaScript引擎,是浏览器的一部分,JavaScript广泛用于浏览器客户端编程,通常JavaScript脚本是通过嵌...
- 一文看懂Kiro,其 Spec工作流秒杀Cursor,可移植至Claude Code
-
当Cursor的“即兴编程”开始拖累项目质量,AWS新晋IDEKiro以Spec工作流打出“先规范后编码”的系统工程思维:需求-设计-任务三件套一次生成,文档与代码同步落地,复杂项目不...
- 「晚安·好梦」努力只能及格,拼命才能优秀
-
欢迎光临,浏览之前点击上面的音乐放松一下心情吧!喜欢的话给小编一个关注呀!Effortscanonlypass,anddesperatelycanbeexcellent.努力只能及格...
- JavaScript 中 some 与 every 方法的区别是什么?
-
大家好,很高兴又见面了,我是姜茶的编程笔记,我们一起学习前端相关领域技术,共同进步,也欢迎大家关注、点赞、收藏、转发,您的支持是我不断创作的动力在JavaScript中,Array.protot...
- 10个高效的Python爬虫框架,你用过几个?
-
小型爬虫需求,requests库+bs4库就能解决;大型爬虫数据,尤其涉及异步抓取、内容管理及后续扩展等功能时,就需要用到爬虫框架了。下面介绍了10个爬虫框架,大家可以学习使用!1.Scrapysc...
- 12个高效的Python爬虫框架,你用过几个?
-
实现爬虫技术的编程环境有很多种,Java、Python、C++等都可以用来爬虫。但很多人选择Python来写爬虫,为什么呢?因为Python确实很适合做爬虫,丰富的第三方库十分强大,简单几行代码便可实...
- pip3 install pyspider报错问题解决
-
运行如下命令报错:>>>pip3installpyspider观察上面的报错问题,需要安装pycurl。是到这个网址:http://www.lfd.uci.edu/~gohlke...
- PySpider框架的使用
-
PysiderPysider是一个国人用Python编写的、带有强大的WebUI的网络爬虫系统,它支持多种数据库、任务监控、项目管理、结果查看、URL去重等强大的功能。安装pip3inst...
- 「机器学习」神经网络的激活函数、并通过python实现激活函数
-
神经网络的激活函数、并通过python实现whatis激活函数感知机的网络结构如下:左图中,偏置b没有被画出来,如果要表示出b,可以像右图那样做。用数学式来表示感知机:上面这个数学式子可以被改写:...
- 一周热门
- 最近发表
- 标签列表
-
- ps图案在哪里 (33)
- super().__init__ (33)
- python 获取日期 (34)
- 0xa (36)
- super().__init__()详解 (33)
- python安装包在哪里找 (33)
- linux查看python版本信息 (35)
- python怎么改成中文 (35)
- php文件怎么在浏览器运行 (33)
- eval在python中的意思 (33)
- python安装opencv库 (35)
- python div (34)
- sticky css (33)
- python中random.randint()函数 (34)
- python去掉字符串中的指定字符 (33)
- python入门经典100题 (34)
- anaconda安装路径 (34)
- yield和return的区别 (33)
- 1到10的阶乘之和是多少 (35)
- python安装sklearn库 (33)
- dom和bom区别 (33)
- js 替换指定位置的字符 (33)
- python判断元素是否存在 (33)
- sorted key (33)
- shutil.copy() (33)