全国计算机等级考试二级Python易错真题详解-流程控制-单选题
wptr33 2025-07-15 01:26 11 浏览
流程控制(单选题)
说明:
- 本文中的题目,全都来自全国计算机等级考试二级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 搭配起来使用,这样才有意义。
相关推荐
- redis的八种使用场景
-
前言:redis是我们工作开发中,经常要打交道的,下面对redis的使用场景做总结介绍也是对redis举报的功能做梳理。缓存Redis最常见的用途是作为缓存,用于加速应用程序的响应速度。...
- 基于Redis的3种分布式ID生成策略
-
在分布式系统设计中,全局唯一ID是一个基础而关键的组件。随着业务规模扩大和系统架构向微服务演进,传统的单机自增ID已无法满足需求。高并发、高可用的分布式ID生成方案成为构建可靠分布式系统的必要条件。R...
- 基于OpenWrt系统路由器的模式切换与网页设计
-
摘要:目前商用WiFi路由器已应用到多个领域,商家通过给用户提供一个稳定免费WiFi热点达到吸引客户、提升服务的目标。传统路由器自带的Luci界面提供了工厂模式的Web界面,用户可通过该界面配置路...
- 这篇文章教你看明白 nginx-ingress 控制器
-
主机nginx一般nginx做主机反向代理(网关)有以下配置...
- 如何用redis实现注册中心
-
一句话总结使用Redis实现注册中心:服务注册...
- 爱可可老师24小时热门分享(2020.5.10)
-
No1.看自己以前写的代码是种什么体验?No2.DooM-chip!国外网友SylvainLefebvre自制的无CPU、无操作码、无指令计数器...No3.我认为CS学位可以更好,如...
- Apportable:拯救程序员,IOS一秒变安卓
-
摘要:还在为了跨平台使用cocos2d-x吗,拯救objc程序员的奇葩来了,ApportableSDK:FreeAndroidsupportforcocos2d-iPhone。App...
- JAVA实现超买超卖方案汇总,那个最适合你,一篇文章彻底讲透
-
以下是几种Java实现超买超卖问题的核心解决方案及代码示例,针对高并发场景下的库存扣减问题:方案一:Redis原子操作+Lua脚本(推荐)//使用Redis+Lua保证原子性publicbo...
- 3月26日更新 快速施法自动施法可独立设置
-
2016年3月26日DOTA2有一个79.6MB的更新主要是针对自动施法和快速施法的调整本来内容不多不少朋友都有自动施法和快速施法的困扰英文更新日志一些视觉BUG修复就不翻译了主要翻译自动施...
- Redis 是如何提供服务的
-
在刚刚接触Redis的时候,最想要知道的是一个’setnameJhon’命令到达Redis服务器的时候,它是如何返回’OK’的?里面命令处理的流程如何,具体细节怎么样?你一定有问过自己...
- lua _G、_VERSION使用
-
到这里我们已经把lua基础库中的函数介绍完了,除了函数外基础库中还有两个常量,一个是_G,另一个是_VERSION。_G是基础库本身,指向自己,这个变量很有意思,可以无限引用自己,最后得到的还是自己,...
- China's top diplomat to chair third China-Pacific Island countries foreign ministers' meeting
-
BEIJING,May21(Xinhua)--ChineseForeignMinisterWangYi,alsoamemberofthePoliticalBureau...
- 移动工作交流工具Lua推出Insights数据分析产品
-
Lua是一个适用于各种职业人士的移动交流平台,它在今天推出了一项叫做Insights的全新功能。Insights是一个数据平台,客户可以在上面实时看到员工之间的交流情况,并分析这些情况对公司发展的影响...
- Redis 7新武器:用Redis Stack实现向量搜索的极限压测
-
当传统关系型数据库还在为向量相似度搜索的性能挣扎时,Redis7的RedisStack...
- Nginx/OpenResty详解,Nginx Lua编程,重定向与内部子请求
-
重定向与内部子请求Nginx的rewrite指令不仅可以在Nginx内部的server、location之间进行跳转,还可以进行外部链接的重定向。通过ngx_lua模块的Lua函数除了能实现Nginx...
- 一周热门
-
-
C# 13 和 .NET 9 全知道 :13 使用 ASP.NET Core 构建网站 (1)
-
因果推断Matching方式实现代码 因果推断模型
-
git pull命令使用实例 git pull--rebase
-
git pull 和git fetch 命令分别有什么作用?二者有什么区别?
-
面试官:git pull是哪两个指令的组合?
-
git 执行pull错误如何撤销 git pull fail
-
git fetch 和git pull 的异同 git中fetch和pull的区别
-
git pull 之后本地代码被覆盖 解决方案
-
还可以这样玩?Git基本原理及各种骚操作,涨知识了
-
git命令之pull git.pull
-
- 最近发表
- 标签列表
-
- git pull (33)
- git fetch (35)
- mysql insert (35)
- mysql distinct (37)
- concat_ws (36)
- java continue (36)
- jenkins官网 (37)
- mysql 子查询 (37)
- python元组 (33)
- mybatis 分页 (35)
- vba split (37)
- redis watch (34)
- python list sort (37)
- nvarchar2 (34)
- mysql not null (36)
- hmset (35)
- python telnet (35)
- python readlines() 方法 (36)
- munmap (35)
- docker network create (35)
- redis 集合 (37)
- python sftp (37)
- setpriority (34)
- c语言 switch (34)
- git commit (34)