Python 精选 200 题 · 按章节题型分类刷题
📚 计算机二级 Python 精选 200 题(文字解析版)· 按「章节 → 题型」重新分类重组 · 共 200 题
本卷为「分类重组题库」:把原卷 200 道选择题,按其所考 章节 与 题型 重新归类整理,便于逐章逐题型集中突破。每道题末尾标注 原卷第 N 题 便于回到 PDF 原卷核对。题干中的代码用灰色底纹标出,点击「📖 解析」可展开讲解。
全卷结构总览
| 章节 | 内容 | 题数 | 主要题型 |
| Ch1 | 程序设计基本方法 | 9 | 语言特点与发展 · 代码编写原则 · pip 与打包工具 |
| Ch2 | 基本语法元素 | 14 | 变量命名与标识符 · 保留字 · 缩进 · 注释 · 赋值语句 |
| Ch3 | 基本数据类型 | 35 | 数字类型(整数/浮点/复数) · 运算符与表达式 · 类型判断与转换 · 字符串 · 内置函数 |
| Ch4 | 程序的控制结构 | 31 | 流程控制概述 · 分支结构 · 循环结构 · 异常处理 |
| Ch5 | 函数与代码复用 | 22 | 函数定义与调用 · 参数传递 · return 与返回值 · 变量作用域 · lambda 与递归 |
| Ch6 | 组合数据类型 | 50 | 组合数据类型概念 · 序列通用操作 · 列表 · 元组 · 字典 · 集合 |
| Ch7 | 文件与数据格式化 | 17 | 文件读写 · 数据维度与 CSV |
| Ch8 | Python 计算生态 | 22 | 标准库(turtle/random/time) · 模块导入 · 第三方库分类 |
| 合计 | 200 题 | — |
出处说明:全部 200 题来自《Python 精选 200 道选择(文字解析版)》(小黑课堂计算机二级)。原卷答案以「本题选 X / 正确答案 X / 答案:X」等多种形式标注,已统一抽取为标准字母答案;个别题题干中的代码/文字存在 OCR 痕迹(如「本地」应为「本题」),做题时以 Python 语义为准。
Ch1程序设计基本方法
1.1 语言特点与发展
1.原卷第5题
以下关于 Python 语言技术特点的描述中,错误的是( )。
(A) 对于需要更高执行速度的功能,例如数值计算和动画,Python 语言可以调用 C语言编写的底层代码
(B) Python 比大部分编程语言具有更高的软件开发产量和简洁性
(C) Python 语言是解释执行的,因此执行速度比编译型语言慢
(D) Python 是脚本语言,主要用作系统编程和 Web 访问的开发语言
答案:D📖 解析
Python 语言执行速度比 C 语言慢,所以不适合用作系统编程。
2.原卷第6题
以下不是 Python 语言特点的是( )
(A) 执行速度快
(B) 语法简洁
(C) 支持中文
(D) 生态丰富
答案:A📖 解析
Python 语言最重要的三个特点是语法简洁、生态丰富、多语言集成。 除了这三个重要特点外,还有一些其他特点: 平台无关、强制可读、支持中文模 式多样、类库便捷。 Python 语言是一种高级通用脚本编程语言,是通过解释方式执行的(解释是将源 代码逐条转换成目标代码同时逐条运行目标代码的过程), 故执行速度没有采用 编译方式的语言执行得快,
3.原卷第131题
关于Python语言发展的描述,最次要的因素是( )。
(A) 解释器采用Unicode编码,支持中文处理
(B) 语言开源开放,能够整合C语言代码
(C) 各领域应用广泛,通用性强
(D) 语法简洁、精炼,语言设计质量高
答案:A📖 解析
Python正因为语言开源开放,能够整合C语言代码,并且应用广泛,通用 性强以及语法简洁、精炼语言设计质量高等优点都是发展越来越好的重要因素, 而采用Unicode编码并不能对自身发展起到决定性的作用。
4.原卷第161题
关于Python语言特点的描述,错误的选项是( )。
(A) Python是—种脚本语言,经过编译后可多次执行
(B) 同一个Python程序可以在不同的操作系统上执行
(C) Python的计算生态非常丰富
(D) Python语言在大数据和人工智能领域的应用很广泛
答案:A📖 解析
Python是跨平台的计算机程序设计语言,计算生态非常丰富,多用于网站 开发、大数据和人工智能等方面。它是—种脚本语言,使用解释方式执行,解释 一句,执行一句,每一次执行程序都需要源代码和解释器。
1.2 代码编写原则
5.原卷第101题
关于Python代码编写原则的描述,错误的选项是( )。
(A) 保持代码的简洁
(B) 保持代码的可读性、减少嵌套
(C) 变量的定义和引用范围要清晰
(D) 尽量使用函数和类封装代码
答案:D📖 解析
Python代码编写的原则包括:保持代码的简洁、变量的定义和引用范围要 清晰、保持代码的可读性、减少嵌套。 "尽量使用函数和类封装代码"与原则违背。
1.3 pip 与打包工具
6.原卷第84题
以下不属于Python的pip工具命令的选项是( )。
(A) install
(B) -V
(C) show
(D) download pip
答案:B📖 解析
常用的子命令有:install、download、uninstall、freeze、list、show、 search、wheel、hash、completion、help,
7.原卷第85题
用Pyinstaller工具打包Python源文件时-F参数的含义是( )。
(A) 指定所需要的第三方库路径
(B) 在dist文件夹中只生成独立的打包文件
(C) 指定生成打包文件的目录
(D) 删除生成的临时文件
答案:B📖 解析
Pyinstaller命令的常用参数: -h,--help:查看帮助 --clean:清理打包过程中的临时文件 -D,--onedir:默认值,生成dist目录 -F,--onefile:在dist文件夹中只生成独立的打包文件 -i<图标文件名.ico>:指定打包程序使用的图标(icon)文件,
8.原卷第90题
以下选项不属于Python的pip工具的功能是( )。
(A) 打包python源代码
(B) 安装第三方python库
(C) 卸载已经安装了的第三方库
(D) 对第三方库进行基本的维护
答案:A📖 解析
Pip工具可以安装第三方python库;卸载已经安装了的第三方库;对 第三方库进行基本的维护。打包使用Pyinstaller工具,
9.原卷第158题
显示pip命令帮助信息的命令格式是( )。
(A) pip -h
(B) pip search <拟查询关键字>
(C) pip install <拟安装库名>
(D) pip download <拟下载库名>
答案:A📖 解析
pip -h是用于查询帮助信息的;pip search是用于查询关键字的; pip install是用于安装库的;pip download是用于下载库的。
Ch2基本语法元素
2.1 变量命名与标识符
10.原卷第1题
以下变量名中,不能作为变量名的是( )。
(A) p
(B) Temp
(C) 3p
(D) _fp
答案:C📖 解析
Python 采用大写字母、小写字母、数字、下划线和汉字等字符及其 组合进行命名,但名字的首字符不能是数字,标识符中间不能出现空格,长度没 有限制,
11.原卷第2题
以下变量名中,符合 Python 语言变量命名规则的是( )。
(A) 33_keyword
(B) key@word33_
(C) break
(D) _33keyword
答案:D📖 解析
Python 采用大写字母、小写字母、数字、下划线和汉字等字符及其 组合进行命名,但名字的首字符不能是数字,标识符中间不能出现空格,不能有 特殊字符,长度没有限制,
12.原卷第103题
函数名称定义错误的选项是( )。
(A) turtle()
(B) _func()
(C) fun*1()
(D) max()
答案:C📖 解析
Python采用大写字母、小写字母、数字、下划线和汉字等字符及其组合进 行命名,但名字的首字符不能是数字,标识符中间不能出现空格,不能含有特殊 符号。
13.原卷第133题
关于变量名称的定义,错误的选项是( )。
(A) false
(B) a123
(C) pass
(D) And
答案:C📖 解析
在Python中,变量命名需要以字母或下划线开头,后面跟字母、下划线和 数字;不能以数字开头;不能与保留字相同。C选项是保留字,
2.2 保留字
14.原卷第10题
以下选项不是 Python 保留字的是( )。
(A) For
(B) try
(C) False
(D) from
答案:A📖 解析
python 严格区分大小写,for 是保留字,常用在循环结构中,For 不 是保留字,
15.原卷第130题
以下保留字不属于分支或循环逻辑的是( )。
(A) while
(B) for
(C) in
(D) elif
答案:C📖 解析
属于分支逻辑的保留字有if、else、elif,属于循环逻辑的保留字有break、
continue、for、while。
16.原卷第132题
不是Python保留字的选项是( )。
(A) define
(B) break
(C) await
(D) finally
答案:A📖 解析
保留字,也称关键字,是指被编程语言内部定义并保留使用的标识符。 Python 3.x版本中有35个保留字,分别为: and、as、assert、async、await, break,
class、continue、def、del、elif、else、except、False、finally、for、from、
global、if、import、in、is、lambda、None、nonlocal、not、or、pass、
raise、return、True、try、while、with、yield。
17.原卷第139题
不用于Python循环结构保留字的选项是( )。
(A) else
(B) continue
(C) break
(D) lambda
答案:D📖 解析
Python循环结构中涉及到的保留字有for, while,还有控制循环的
continue,break,以及循环的扩招模式else。
2.3 缩进
18.原卷第3题
以下关于 Python 缩进的描述中,错误的是( )。
(A) 缩进表达了所属关系和代码块的所属范围
(B) 缩进是可以嵌套的,从而形成多层缩进
(C) 判断、循环、函数等都能够通过缩进包含一批代码
(D) Python 用严格的缩进表示程序的格式框架,所有代码都需要在行前至少加一个空格
答案:D📖 解析
Python语言采用严格的缩进来表示程序逻辑。缩进指每行语句开始 前的空白区域,用来表示Python程序间的包含和层次关系。一般代码不需要缩 进,顶行编写且不留空白。当表示分支、循环、函数、类等程序含义时,在if、
while、for、def、class等保留字所在完整语句后通过英文冒号(:)结尾并在之
后进行缩进,表明后续代码与紧邻无缩进语句的所属关系,
19.原卷第4题
下列关于 Python 缩进的描述中,错误的是( )。
(A) Python 语言中采用严格的"缩进"来表明程序格式不可嵌套
(B) 判断、循环、函数等语法形式能够通过缩进包含一批 Python 代码,进而表达对应的语义
(C) Python 单层缩进代码属于之前最邻近的一行非缩进代码,多层缩进代码根据缩进关系决定所属范围
(D) 缩进指每一行代码前面的留白部分,用来表示代码之间的层次关系
答案:A📖 解析
缩进指每行语句开始前的空白区域,用来表示 Python 程序间的包含 和层次关系。缩进是可以嵌套的,表示代码的层次关系。
2.4 注释
20.原卷第162题
关于Python语言注释的描述,错误的选项是( )。
(A) Python可以用井号#注释—行语句
(B) 注释语句不能够被执行
(C) Python可以用—对三引号"注释多行语句
(D) Python可以使用缩进来表示注释
答案:D📖 解析
Python语言中可以使用井号(#)或者三引号(""或""")来注释语句,其中 并号常用于单行,三引号常用于多行。注释语句是对代码进行的解释说明,不被 解释器解释执行。
2.5 赋值语句
21.原卷第7题
下列哪个语句在 Python 中是非法的?( )
(A) x=y=z=1
(B) x=(y=z+1)
(C) x,y=y,x
(D) x+=y
答案:B📖 解析
python 中多个变量赋同样的只可以用 x=y=z=1 的方式,两个数据 进行交换可用 x,y=y,x,x+=y 等同于 x=x+y。赋值语句右边只能是数值或表达 式,不能是语句,
22.原卷第102题
关于Python赋值语句的描述,错误的选项是( )。
(A) 对于a=100语句,无论变量a是什么类型,该赋值语句运行一定正确
(B) a,b = b,a可以交换a和b的值
(C) 使用符号"="表达赋值关系
(D) 赋值语句要求赋值两侧的数据类型一致
答案:D📖 解析
对变量进行赋值的一行代码被称为赋值语句。"="表示赋值,即将等号右侧 的表达式计算后的结果值赋给左侧变量。不要求赋值两侧的数据类型一致。
23.原卷第163题
以下赋值语句,错误的选项是( )。
(A) a, b = b, c
(B) x == 0
(C) s = s.replace(':',"")
(D) b +=1
答案:B📖 解析
A选项中利用元组赋值的方式,按顺序将等号右边的数据赋值给左边;B选项 中有两个等号,Python中两个等号是判断等式两边数据是否相等,不属于赋值 操作;C选项中将s使用replace()方法后的结果赋值给s自身;D选项中的操作等同 于b=b+1,也就是将b作自增长1的操作。
Ch3基本数据类型
3.1 数字类型(整数/浮点/复数)
24.原卷第18题
Python语言提供三种基本的数字类型,它们是( )。
(A) 整数类型、浮点数类型、复数类型
(B) 整数类型、二进制类型、浮点数类型
(C) 复数类型、二进制类型、浮点数类型
(D) 整数类型、二进制类型、复数类型
答案:A📖 解析
Python语言提供3种数字类型:整数类型、浮点数类型和复数类型,
25.原卷第19题
以下关于Python语言复数类型的描述中,错误的是()。
(A) 复数可以进行四则运算
(B) 实部不可以为0
(C) Python语言中可以使用z.real和z.imag分别获取它的实部和虚部
(D) 复数类型与数学中复数的概念一致
答案:B📖 解析
python中的复数和数学中概念一致,复数同样可以进行四则运算, 我们可以通过z.real和z.imag获取它的实部和虚部。复数实部是可以为零的,
26.原卷第166题
x=2.6+4j,表达式x.real+x.imag的结果是( )。
(A) 2.6
(B) 6.6
(C) 4.0
(D) TypeError
答案:B📖 解析
题目中使用了复数的real和imag两种属性,其中real可以得到复数的实数部 分,imag可以得到复数的虚数部分。两种得到的均为浮点数,所以得到的结果 为6.6。
27.原卷第199题
以下代码的执行结果是( )。
x=-4+3j
y=4-3j
print(x+y)
(A) 0
(B) <class 'complex' >
(C) 0j
(D) 无输出
答案:C📖 解析
在Python中复数的加法运算与数学上的加法一致,实部与实部相加,虚部与 虚部相加,最后得到0j,注意当虚部为0时, j 依然不能省略。
3.2 运算符与表达式
28.原卷第8题
以下代码的输出结果是( )。
x = 2 + 9 * ((3*12) - 8) // 10
print(x)
(A) 26
(B) 27.2
(C) 28.2
(D) 27
答案:D📖 解析
x//y 计算 x 与 y 之整数商,即不大于 x 与 y 之商的最大整数。x = 2 +
9 * ((3*12) - 8) // 10 = 2 + 9 * 28 // 10 = 2 + 25 = 27,
29.原卷第9题
表达式 3**2*4//6%7 的计算结果是( )。
答案:D📖 解析
** 表示次方,//表示取整,%表示取余。3**2 = 9*4=36//6 = 6 %7
= 6,
30.原卷第11题
以下代码的输出结果是( )。
print( 0.1 + 0.2 == 0.3 )
(A) True
(B) False
(C) -1
(D) 0
答案:B📖 解析
由于不确定位数影响,0.1+0.2!=0.3,所以本题输出为 False。
31.原卷第13题
下列关于Python运算符的使用描述正确的是( )。
(A) a=!b,比较a与b是否不相等
(B) a=+b,等同于a=a+b
(C) a==b,比较a与b是否相等
(D) a//=b,等同于a = a/b
答案:C📖 解析
a!=b表示比较a和b是否不相等,a+=b等同于a=a+b,a//=b等用于
a=a//b,
32.原卷第136题
关于数字运算符的描述,错误的选项是( )。
(A) 运算符%实现取余操作,参与运算的可以是浮点数,结果可能是浮点数
(B) 运算符/实现除法操作,如果参与运算的都是整数,结果只能是整数
(C) 运算符*实现乘法操作,参与运算的可以是任意数字类型
(D) 运算符**实现幂运算操作,幂数可以是整数
答案:B📖 解析
%是取余运算符,当参与运算的数字存在浮点数的时候,结果是浮点数,A 选项正确;是除法运算符,结果只能是浮点数或者复数,B选项错误*是乘法运算 特,只要是数字均可参与乘法运算,C选项正确;**是幂运算,代表数字的多少 次方,D选项正确。
33.原卷第164题
表达式'980'> '1000'的结果是( )。
(A) 1
(B) False
(C) True
(D) 0
答案:C📖 解析
字符串比较大小是按照对应索引位置上的字符比较大小,且针对字符来说 '0'<.......'9'<'A'........ 'Z'<'a'<.....<'z',题中索引为0位置的字符'9'> '1。
3.3 类型判断与转换
34.原卷第22题
表达式int('100/3')的执行结果是( )。
(A) '100/3'
(B) 33.3
(C) 33
(D) ValueError
答案:D📖 解析
int()函数用于将一个字符串或数字转换为整型,字符串'100/3'中有"/", 该文本不能转化成数值,参数无效,会报ValueError的错误,
35.原卷第105题
关于类型转换的描述,错误的选项是( )。
(A) int(1.23)能将浮点数1.23转换为整数
(B) int('1.23')能将字符串转换为整数
(C) str(1+2j)能将复数1+2j转换为字符串类型
(D) int(1+2j)不能将复数1+2j转换为整数类型,执行出错
答案:B📖 解析
int(x):将x转换成整数,x可以是浮点数或字符串。当x是字符串时,必须是 10进制整型数字字符串,否则报错。
36.原卷第135题
关于字符串类型转换的描述,错误的选项是( )。
(A) str(123)的结果是"123"
(B) str(1.23)的结果是'1.23'
(C) str(1+2j)的结果是'(1+2j)'
(D) str(1+2)对表达式1+2进行字符串转换,结果是'1+2'
答案:D📖 解析
D【解析】str()函数是将参数转化为字符串,当参数是表达式的时候会先计 算出结果,再进行转换,所以D选项的答案应是'3’。
37.原卷第165题
表达式type(45)的结果是()。
(A) None
(B) <class 'str'>
(C) <class 'float'>
(D) <class 'int'>
答案:D📖 解析
题目中使用了type()函数,此函数是用来求出参数的数据类型,函数内的参 数是整数45,所以返回值应为。
3.4 字符串
38.原卷第14题
字符串tstr='television',显示结果为vi的选项是( )。
(A) print(tstr[-6:6])
(B) print(tstr[5:7])
(C) print(tstr[4:7])
(D) print(tstr[4:-2])
答案:A📖 解析
对字符串中某个子串或区间的检索成为切片。切片的使用方式如下: <字符串或字符串变量>[N:M],切片获取字符串从N到M(不包含M)的子字符 串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减 序号。反向从-1开始,正向从0开始。tstr[-6:6]表示截取字符串反向第6个字符v 到正向第7个字符s(不包括s)之间的字符,即vi,
39.原卷第15题
设str1='*@python@*',语句print(str1[2:].strip('@'))的执行结果是( )。
(A) *@python@*
(B) python*
(C) python@*
(D) *python*
答案:C📖 解析
对字符串中某个子串或区间的检索成为切片。切片的使用方式如下: <字符串或字符串变量>[N:M],切片获取字符串从N到M(不包含M)的子字符 串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减 序号。反向从-1开始,正向从0开始。str1[2:]表示截取字符串正向第3个字符p 到字符串末尾之间的字符,即'python@*'。 str.strip(chars)表示从字符串str中去掉在其左侧和右侧chars中列出的字符。因 为得到的子字符串'python@*'最左和最右都没有字符@,所以最后的结果依然 为'python@*',
40.原卷第16题
以下代码的输出结果是( )。
x = ‘R\0S\0T’
print(len(x))
答案:B📖 解析
len(x)返回字符串x的长度,一个中文字符和一个西文字符的长度都记 为1。"\"为转义字符,"\0"表示一个空格,长度记为1,所以字符串长度为5,
41.原卷第17题
以下关于Python字符串的描述中,错误的是( )。
(A) 空字符串可以表示为""或''
(B) 在Python字符串中,可以混合使用正整数和负整数进行索引和切片
(C) 字符串'my\\text.dat'中第一个\表示转义符
(D) Python字符串采用[N:M]格式进行切片,获取字符串从索引N到M的子字符串(包含N和M)
答案:D📖 解析
对字符串中某个子串或区间的检索成为切片。切片的使用方式如下: <字符串或字符串变量>[N:M],切片获取字符串从N到M(不包含M)的子字符 串,其中,N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减 序号,
42.原卷第21题
s='1234567890',以下表示'1234'的选项是( )。
(A) s[-10:-5]
(B) s[0:3]
(C) s[0:4]
(D) s[1:5]
答案:C📖 解析
对字符串中某个子串或区间的检索成为切片。切片的使用方式如下: <字符串或字符串变量>[N:M] 切片获取字符串从N到M(不包含M)的子字符串,其中,N和M为字符串的索 引序号,可以混合使用正向递增序号和反向递减序号。反向从-1开始,正向从0 开始。s[0:4]表示截取字符串正向第1个字符1到正向第5个字符5(不包括5)之 间的字符,即'1234',
43.原卷第23题
以下语句的执行结果是( )。
str1='||北京大学||'
print(str1.strip('|').replace('北京','南京'))
(A) 南京大学||
(B) 南京大学
(C) ||南京大学||
(D) ||南京大学
答案:B📖 解析
str.strip(chars)表示从字符串str中去掉在其左侧和右侧chars中列出 的字符。str.replace(old,new):返回字符串中的old(旧字符串)替换成new(新 字符串)后生成的字符串,
44.原卷第74题
下面语句的执行结果是( )。
tstr = 'Baidu Translation is an online translation service'
print(len(tstr.split('a')))
答案:C📖 解析
split()通过指定分隔符对字符串进行切片,返回一个列表。字符串中 共有6个a,则该字符串被切割成7部分,所以列表元素个数为7,使用len()求出 列表长度为7,
45.原卷第122题
执行后返回列表类型的函数是( )。
(A) replace()
(B) strip()
(C) lower()
(D) split()
答案:D📖 解析
replace(old,new):返回字符串中的old(旧字符串)替换成new(新字符 串)后生成的新字符串。 lower():将字符串中的所有大写字母转换为小写字母。 split():返回一个列表,若有参数,列表根据参数被分隔的部分构成,省略 参数默认以空白符分隔。 strip():从字符串中去掉其左右两侧指定的字符,返回的是字符串。
46.原卷第137题
关于操作字符串变量s的使用方式,错误的选项是( )。
(A) s.len()
(B) s.format()
(C) s.split()
(D) s.join()
答案:A📖 解析
字符串没有len()方法,可以利用len()函数计算字符串的长度; format()方法 是用来对穿符串进行格式化操作;split()方法是用来对宇符串进行切割的;join() 方法是利用字符串拼接其他多元素数据类型。
47.原卷第138题
字符串s = '中华人民共和国国庆日是10月1日‘,使用表达式提取s中的日 期‘10月1日',正确的选项是( )。
(A) s[12:]
(B) s[-5:-1]
(C) s[-5:]
(D) s[-4:]
答案:C📖 解析
此题考查的是字符串的切片,A选项,切片得到的结果为‘0月1日‘;B选项, 切片得到的结果为'10月1’;C选项,切片得到的结果为‘10月1日';D选项, 切片得到的结果为’0月1日'。
48.原卷第167题
变量s = 'shehuizhili',表达式s[-5:-1]的结果是( )。
(A) zhil
(B) zhili
(C) izhi
(D) izhil
答案:A📖 解析
对字符串中某个子串或区间的检索称为切片。切片的使用方式如下: <字符 串或字符串变量>[N:M]切片获取字符串从N到M(不包含M)的子字符串,其中N 和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号。切片要 求N和M都在字符串的索引区间,如果N大于等于M,则返回空字符串。如果N 缺失,则默认将N设为0;如果M缺失,则默认表示到字符串结尾。题自中切片从 索引-5开始到索引-1结束等得到的子串为“zhil” 。
49.原卷第186题
d =[(-0.71,0.6,1.0),(0.0,0.06,4.0),(0.71,0.6,8.0)]
for n in d:
print(--------)
填写空格,输出下述内容,
-0.71 0.0 0.71
正确的选项是() 。
(A) '{}'.format(n[0]), end=' '
(B) '{}'.format(n[0])
(C) '{}/n'.format(n[0])
(D) '{}\n’.format(n[0])
答案:A📖 解析
观察题目中代码,要求输出的三个数据均为d列表中单个元素的首位,且因 为三个参数中间是以空格分隔,那么print()函数就需要设置end参数等于空格, 即end=’ ’。
3.5 内置函数
50.原卷第76题
下列关于Python内置函数的使用描述错误的是()。
(A) int(x)是将x转换为一个整数
(B) print("6+5")的输出是11
(C) dic.clear()的结果是清空字典dic
(D) 使用append()函数可以向列表添加元素
答案:B📖 解析
int(x)是将x转换成一个整数,出输出的是字符串’6+5’, Dic.clear()是清空字典dic,append()函数可以向列表添加元素,
51.原卷第94题
以下不属于 Python 的内置函数的选项是( )。
(A) abs()
(B) sum()
(C) input()
(D) get()
答案:D📖 解析
get()不属于Python内置函数,
52.原卷第104题
将下列表达数作为eval()函数的参数,执行结果错误的选项是( )。
(A) "input()"
(B) "print()"
(C) "1+2"
(D) 1+2
答案:D📖 解析
eval()函数将去掉字符串最外侧的引号,并按照Python语句方式执行去掉引 号后的字符内容。
53.原卷第108题
以下代码的执行结果是( )。
a=eval("12+3")
if type(a) == type(123):
print("整数类型")
elif type(a) == type("123"):
print("字符串类型")
else:
print("其他类型")
(A) 字符串类型
(B) 其他类型
(C) 代码执行错误提示
(D) 整数类型
答案:D📖 解析
eval()函数将去掉字符串最外侧的引号,并按照Python语句方式执行去掉引 号后的字符内容。 a=eval("12+3")=15,符合if语句条件,继续执行,输出:整数类型。
54.原卷第120题
为了使以下代码的执行结果是:中国,韩国,日本,巴基斯坦,蒙古
country = ['中国','韩国','日本','巴基斯坦','蒙古']
n=1
for c in country:
if n < len(country) :
print(____________)
else:
print(c)
n=n+1
在横线处要补充的代码是( )。
(A) c
(B) c,end=","
(C) c,","
(D) c,sep=","
答案:B📖 解析
程序使用for循环遍历列表中所有元素,if条件为判断n的值是否小于列表长 度,输出结果为列表中的所有元素,中间用逗号隔开,所以这里填写:c,end=","。
55.原卷第134题
关于input()函数的描述,错误的选项是( )。
(A) 用户输入的信息全部被当作一个字符串处理
(B) 用户可以输入多行信息,并将被当作一个字符串处理
(C) input()参数用于提示用户,不影响用户输入的内容
(D) input()参数只能是字符串类型
答案:B📖 解析
input()函救获取用户输入的信息,并将信息组成一个字符串处理, input() 函数含有参数,用于提示用户输入,当用户输入信息时,使用回车也就是想换一 行时,会停止输入结束input()函数。
56.原卷第168题
执行结果为[23,56]的选项是() 。
(A) print(eval([23,56]))
(B) print(type(eval([23,56]')))
(C) print(eval('[23,56]'))
(D) print(list('[23,56]'))
答案:C📖 解析
在多个选项中,分别使用了print()函数、eval()函数、type()函数和list()函 数。其中print()函数是输出函数,各选项中使用均正确;eval()函数参数必须是字 符串类型,所以A选项错误;type()函数返回的数据是参数的数据类型,并不是 eval()函数处理过后的[23,56],所以B选项错误;list()函数转化字符串的时候,会 将每一个字符都化为列表的一个元素,所以D选项得到的数据为['[', '2', '3', ',', '5', '6', ']'],所以D选项错误。
57.原卷第192题
不是 Python 内置函数的选项是( )。
(A) divmod()
(B) compare()
(C) ord()
(D) type()
答案:B📖 解析
在 Python 语言中, divmod()函数返回当第一个参数除以第二 个参 数时 包含商和余 数的元组。type()函数返回参数的数据类型。 ord()函数返回字符串 参数的 ASCI 数值或者Unicode 数值。
58.原卷第198题
以下代码的执行结果是( )。
a = "100"
print(eval(a+"1+2"))
(A) 100+1+2
(B) 103
(C) 1003
(D) 执行出错
答案:C📖 解析
eval 函数内部先执行字符串的拼接,然后再用 eval()函数去掉字符串的引 号,首先字符 串 100' + "1+2" ='1001+2' , 然 后 将 字 符 串 1001 + 2' 通 过 eval0 函 数 转 化 得 到 1001+2 =1003。
Ch4程序的控制结构
4.1 流程控制概述
59.原卷第26题
以下的描述中,不属于 Python 语言控制结构的是( )。
(A) 循环结构
(B) 分支结构
(C) 跳转结构
(D) 顺序结构
答案:C📖 解析
顺序结构、分支结构和循环结构是Python语言中3种最基本的控制结 构。异常处理以程序异常为判断条件,根据一段代码执行的正确性进行程序逻辑 选择,是分支结构的一种扩展,
4.2 分支结构
60.原卷第27题
以下关于分支结构的描述中,错误的是( )。
(A) 二分支结构有一种紧凑形式,使用保留字if和elif实现
(B) if 语句中条件部分可以使用任何能够产生 True 和 False 的语句和函数
(C) if语句中语句块执行与否依赖于条件判断
(D) 多分支结构用于设置多个判断条件以及对应的多条执行路径
答案:A📖 解析
二分支结构使用if-else保留字对条件进行判断,多分支结构使用
if-elif-else保留字对多个相关条件进行判断,
61.原卷第35题
以下程序的输出结果是( )。
x = 10
y = 0
if (x > 5) or (x/y > 5):
print('Right')
else:
print('Wrong')
(A) 报错:ZeroDivisionError
(B) Wrong
(C) Right
(D) 不报错,但不输出任何结果
答案:C📖 解析
保留字 or 表示多个条件之间的“或”关系。or 的条件只要满足一个 即可,x>5 满足,执行下一语句,输出 Right,or 右侧条件语句不运行。
62.原卷第106题
以下代码的执行结果是( )。
a = 2.71828182459
if isinstance(a ,int):
print("{} is int. ".format( round(a, 2)))
else:
print("{} is not int.".format (round(a,2)))
(A) 2.72 is not int.
(B) 2.72 is int.
(C) 执行错误
(D) 2.71828182459 is not int.
答案:A📖 解析
isinstance(object, classinfo):如果对象的类型和classinfo的类型相同,则 返回True,否则返回False。 a为浮点数类型,if语句判断条件不成立,执行else语句,输出round(a,2) is not int,round(a,2)将a四舍五入并保留两位小数,得到2.72,所以最后结果为
"2.72 is not int."。
63.原卷第107题
关于Python分支结构的描述,错误的选项是( )。
(A) 二分支结构可以用if else语句表示
(B) 多分支结构可以用if elif else语句表示
(C) 单分支结构可以用if语句表示
(D) 多分支结构可以用switch语句表示
答案:D📖 解析
Python中不存在switch语句。
64.原卷第140题
以下代码的执行结果是( )。
a= "123"
if a > "Python":
print("再学Python")
else:
print("初学Python")
(A) 初学Python
(B) 再学Python
(C) 没有输出
(D) 执行出错
答案:A📖 解析
观察题目中代码,判断字符串'123'> ‘Python’的布尔值,然后根据布尔 值执行对应的分支。宇符串比较大小是按照对应索引位置比较,从索引0开始, 只要有一索引分出了大小,便得到布尔值,字符串比较大小按照以下规则 'O'<9'<'A'<Z'<'a'<z。所以‘123'>‘Python’得到False,执行else分支。
65.原卷第169题
关于Python分支结构的描述,正确的选项是()。
(A) if 条件:语句块
(B) if 条件语句块
(C) if 条件语句块else 条件
(D) if 条件:语句块else
答案:A📖 解析
正确的分支结构完整形式如下:
if 条件:
语句块
elif 条件:
语句块
else:
语句块 B选项中if涤件后无冒号,格式错误;C选项中if条件后无冒号且else有条件,格式 错误;D选项中else后无冒号,格式错误。
66.原卷第170题
以下代码的执行结果是( )。
a = '3000'
if a < 2000:
print("少")
elif a < 4000:
print("不多")
else:
print("还行")
(A) 还行
(B) 不多
(C) 少
(D) 执行出错
答案:D📖 解析
观察题目中代码,本题属于误导性题目,会让做题者认为是使用分支语句根 据a值的大小执行不同的分支。但是实际上a值为字符串,不能和数字比较大小, 所以程序执行会出现异常。
4.3 循环结构
67.原卷第12题
以下关于 Python 循环结构的描述中,错误的是( )。
(A) continue 只结束本次循环
(B) 遍历循环中的遍历结构可以是字符串、文件、组合数据类型和range()函数等
(C) Python通过for、while等保留字构建循环结构
(D) break用来结束当前当次语句,但不跳出当前的循环体
答案:D📖 解析
break用来跳出最内层for或while循环,脱离该循环后程序从循环后 的代码继续执行,
68.原卷第24题
在Python语言中,使用for..in..方式形成的循环不能遍历的类型是( )。
(A) 字典
(B) 列表
(C) 浮点数
(D) 字符串
答案:C📖 解析
浮点数不是迭代元素,故不可被遍历,
69.原卷第25题
以下代码的输出结果是( )。
for s in "PythonNCRE":
if s=="N":
break
print(s,end="")
(A) N
(B) PythonCRE
(C) Python
(D) PythonNCRE
答案:C📖 解析
for循环将字符串“pythonNCRE”的字符依次赋值给变量s,当s== “N”时,跳出for循环,故输出结果为Python,
70.原卷第28题
以下程序的输出结果是( )。
a = [3, 2, 1]
for i in a[::-1]:
print(i, end=' ')
(A) 1,2,3
(B) 3 2 1
(C) 1 2 3
(D) 3,2,1
答案:C📖 解析
列表切片:<列表或列表变量>[N:M:K] 切片获取列表类型从N到M(不包含M)的以K为步长所对应的元素组成的列表。 题中 k 为-1,N 和 M 省略,表示获取列表从后往前的所有元素,即 1 2 3,
71.原卷第29题
以下代码的输出结果是( )。
for s in "testatest":
if s=="a" or s=='e':
continue
print(s, end='')
(A) tsttst
(B) testatest
(C) testtest
(D) tstatst
答案:A📖 解析
continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语 句,但不跳出当前循环。由代码可知,当s=="a"或s=='e'条件成立时,跳出当 前当次循环,不输出s的值,则最后的输出结果为tsttst,
72.原卷第30题
以下程序的输出结果是( )。
for i in "Nation":
for k in range(2):
if i == 'n':
break
print(i, end="")
(A) aattiioo
(B) NNaattiioo
(C) Naattiioon
(D) aattiioonn
答案:B📖 解析
range(start, stop[, step])表示计数从start开始,到stop结束,但不 包括stop,步长默认为1。start默认从0开始,range(2)等价于range(0,2),则k 的取值范围为0、1。 break用来跳出最内层循环,脱离该循环后程序从循环后的代码继续执行。 第1次循环,i=N,k=0,if判断条件不成立,输出i的值为N。 第2次循环,i=N,k=1,if判断条件不成立,输出i的值为N。 第3次循环,i=a,k=0,if判断条件不成立,输出i的值为a。 第4次循环,i=a,k=1,if判断条件不成立,输出i的值为a。 …… 第11次循环,i=n,k=0,if判断条件成立,跳出内层循环。 第12次循环,i=n,k=1,if判断条件成立,跳出内层循环。 最后输出为Nnaattiioo,
73.原卷第31题
以下关于分支和循环结构的描述中,错误的是( )。
(A) 所有的for分支都可以用while循环改写
(B) while循环只能用来实现无限循环
(C) 可以终止一个循环的保留字是break
(D) continue可以停止后续代码的执行,从循环的开头重新执行
答案:B📖 解析
while 循环也可以用来实现遍历循环,
74.原卷第32题
以下关于"for <循环变量> in <循环结构>"的描述,错误的是( )。
(A) 这个循环体语句中不能有break语句,会影响循环次数
(B) <循环结构>采用[1,2,3]和['1','2','3']的时候,循环的次数是一样的
(C) 使用range(a,B)函数指定for循环的循环变量取值是从a到b-1
(D) for i in range(1,10,2)表示循环5次,i的值是从1到9的奇数
答案:A📖 解析
break是辅助循环控制的保留字,用来跳出最内层for或while循环, 脱离该循环后程序从循环后的代码继续执行,
75.原卷第33题
执行以下程序,输入"fish520",输出结果是( )。
w = input()
for x in w:
if '0'<= x <= '9':
continue
else:
w.replace(x,'')
print(w)
(A) 520
(B) fish520
(C) fish
(D) 520fish
答案:B📖 解析
本题是循环从输入的字符串中取出每个字符,当字符取值在‘0’到 ‘9’之间不做处理,s.replace(ord,new)的作用是用新的字符替换掉字符串中老 的字符返回新的字符串,本题最后输入的还是原来的字符串 w,故没有发生任何 更改。
76.原卷第34题
执行以下程序,输 ab,然后回车,结果是( )。
k = 10
while True:
s = input("请输入q退出:")
if s == 'a':
k+=1
continue
else:
k+=2
break
print(k)
(A) 13
(B) 请输入q退出:
(C) 12
(D) 10
答案:C📖 解析
break用来跳出最内层循环,脱离该循环后程序从循环后的代码继续 执行。 continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但不跳 出当前循环。 首先s == 'a'成立,k的值加1,变成11,结束当前当次循环,进入下个循环。函 数内部的k不是全局变量,不改变外部全局变量的值,所以进入第二次循环时,k 的值依然为10。此时s的值为b,s == 'a'成立不成立,k的值加2,变成12,跳出 循环,执行输出语句,输出结果为12,
77.原卷第49题
以下代码的输出结果是( )。
S = 'Pame'
for i in range(len(S)):
print(S[-i],end="")
(A) ameP
(B) emaP
(C) Pema
(D) Pame
答案:C📖 解析
Python 通过保留字 for 实现遍历循环,使用方法如下:
for <循环变量> in <遍历结构>
<语句块> 遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中,对于每个所 提取的元素执行一次语句块。for语句的循环执行次数是根据遍历结构中元素个 数确定的。len(S):字符串S的长度,这里为4。i的取值范围为range(4),即0、
1、2、3。
题目中的代码循环过程如下:
i = 0,S[-i]=P;
i = 1,S[-i]=e;
i = 2,S[-i]=m;
i = 3,S[-i]=a。
代码执行后的输出结果是Pema。
78.原卷第109题
以下代码的执行结果是( )。
a=1000
while (a>123):
for i in range(10) :
a=a-a//123
if a<200 :
break
print(a)
(A) 1000
(B) 123
(C) 199
(D) 执行错误
答案:B📖 解析
x//y:x与y的整数商,即不大于x与y的商的最大整数。 a=1000,满足while条件,进入for循环,range(10)代表i的取值为0到9。 第 1 次 for 循 环 : i=0 , a=a-a//123=1000-1000//123=1000-8=992 , 992<200不成立,进入下次循环; 第2次for循环:i=1,a=a-a//123=992-992//123=992-8=984,984<200 不成立,进入下次循环; …… 第10次for循环:i=9,a=927,927<200不成立。此时while语句条件a>123 依旧成立,再次进入for循环。 由以上运算过程可知,for循环中,直到a<200条件成立,或者是i从0取到9 执行结束,才会退出for循环,进入下一次while循环。经历数次while循环后,a 值将会逐渐减小,直到a>123不成立,才能退出while循环,执行输出语句,所 以最后的a值一定小于或等于123。
79.原卷第111题
以下代码的执行结果是( )。
start = 2
n = 0
while start <=10:
start = start +2
n=n+ 1
print(n)
答案:C📖 解析
第1次循环:start=2,while条件成立,start=start+2=4,n=n+1=1; 第2次循环:start=4,while条件成立,start=start+2=6,n=n+1=2; …… 第5次循环:start=10,while条件成立,start=start+2=12,n=n+1=5; 此时while条件不成立,退出循环,输出n。
80.原卷第143题
关于while循环的描述,正确的选项是( )。
(A) while循环可以实现无限循环
(B) while循环不能实现计数循环
(C) while循环与遍历循环等效
(D) while循环不能用于函数内部
答案:A📖 解析
在Python中for循环被称作遍历循环,while循环被称作无限循环,所有的 for循环都可以用while循环改写,循环语句可以在Python程序的程序段中使用。
81.原卷第171题
以下代码的执行结果是( )。
m= 'BeetHoven MoonLight'
a = 0
b=0
for i in m:
if 'A'<= i<= "Z":
a += 1
elif 'a'<= i <='z':
b+=1
else:
break
print(a, b)
(A) 2 14
(B) 4 14
(C) 2 7
(D) 4 7
答案:C📖 解析
观察题目中代码可知,在循环中对m中的每一个字符进行判断,在A到Z之 间的字符,变量a值加一;在a到z之间的字符,变量b值加一;两个条件均不满足直 接退出循环。观察m变量当遇到空格时,会退出循环,所以计算空格前的所有字 符数量,其中大写字母2个,小写字母7个,输出结果为2 7。
82.原卷第173题
关于循环结构的描述,错误的选项是( ) 。
(A) for i in range(4,n)中循环变量i的初值是4
(B) 循环条件中的空列表或空字符串等价于False
(C) for i in 'Hello world'的循环次数是11次
(D) while循环结构的循环次数必须是确定的
答案:D📖 解析
在循环结构中,遍历循环通常遍历多元素数据类型及range()函数,其中多 元素数据类型的遍历次数与元素个数有关,range()函数有三个参数分别是开始 位置,结束位置和步长,所以选项A、C正确;无限循环中根据条件决定是否执行, 当条件为一个数据的时候,会自动利用bool()函数计算此数据的布尔值,针对列 表、字符串等多元素数据类型,空数据布尔值即为False,所以B选项正确、D选 项错误。
4.4 异常处理
83.原卷第40题
当用户输入5时,下面代码的输出结果是( )。
try:
n = input("请输入一个整数:")
def pow2(n):
return n**2
pow2(n)
except:
print("程序执行错误")
(A) 程序执行错误
(B) 25
(C) 程序没有任何输出
(D) 5
答案:A📖 解析
input()函数从控制台获得用户的一行输入,无论用户输入什么内容, input()函数都以字符串类型返回结果。所以变量n是字符串类型,计算n的平方 时产生异常,执行except后的语句块,输出"程序执行错误",
84.原卷第41题
以下关于程序的异常处理的描述中,错误的是( )。
(A) 在 try…except…else 结构中,如果 try 块的语句引发了异常则会执行 else 块中的代码
(B) 异常处理结构中的 finally 块中的代码仍然有可能出错从而再次引发异常
(C) 一般不建议在 try 中放太多代码, 而是应该只放入可能会引发异常的代码
(D) 在异常处理结构中,不论是否发生异常,finally 子句中的代码总是会执行的
答案:A📖 解析
try……except……else 结构中,发生异常执行 except 块中的代码,
85.原卷第110题
关于异常处理的描述,错误的选项是( )。
(A) 异常处理中try是必须的,except并不必须
(B) try、except、else、finally都可以用于异常处理
(C) except后面可以增加异常类型,进而区分不同异常进行处理
(D) try和except都是异常处理保留字
答案:A📖 解析
Python语言使用保留字try和except进行异常处理。
86.原卷第129题
当用户输入5时,下面代码的输出结果是( )。
try:
n = input("请输入一个整数:")
def pow2(n):
return n**2
pow2(n)
except :
print("程序执行错误")
(A) 程序没有任何输出
(B) 25
(C) 程序执行错误
(D) 5
答案:C📖 解析
input()函数从控制台获得用户的一行输入,无论用户输入什么内容,input() 函数都以字符串类型返回结果。所以变量n是字符串类型,计算n的平方时产生异 常,执行except后的语句块,输出"程序执行错误"。
87.原卷第142题
关于程序异常处理的描述,错误的选项是( )。
(A) 在进行关键计算时使用异常处理,如除0运算
(B) 在获得用户输入时使用异常处理,避免输入格式异常
(C) 在读取文件时使用异常处理,避免文件读取异常
(D) 在所有运算中都应该使用异常处理,避免程序任何可能的错误
答案:D📖 解析
Python中的异常处理机制是防止程序因某些非编程原因的错误导致程序 终止,或者在可能出现异常的代码处增加处理机制。一般来说程序段无需增加异 常处理机制。
88.原卷第172题
关于以下程序执行结果的描述,正确的选项是( )。
try:
f=open('data.txt' , 'w')
ts = f.write()
print('写文件正确')
except:
print('文件操作错误')
(A) 输出"写文件正确”
(B) 无论data.txt文件是否存在,都输出"文件操作错误"
(C) 如果data.txt文件不存在,不输出"文件操作错误”"
(D) 如果data.txt文件存在,不输出"文件操作错误"
答案:B📖 解析
观察题目中代码,使用了异常捕获语句,在语句结构中,首先用写的方式打 开文件data.txt,然后使用write()方法,因为没有参数,所以此处会直接产生异 常,即会被except捕获异常并输出文件操作错误。
89.原卷第191题
关于 Python 程序异常处理的描述,错误的选项是( )。
(A) try、except 等保留字提供异常处理功能
(B) 程序发生异常后经过妥善处理可以继续执行
(C) Python 的异常和错误是完全相同的概念
(D) 异常语句可以与 else 和 finally 保留字配合使用
答案:C📖 解析
在 Python 语言中,利用 try、except、 finally 和 else 保留字提供异 常处理功能,当发生异常时,可以通过 except 捕获异常,而不是直接退出程序,异 常和错误是不同的概念。
Ch5函数与代码复用
5.1 函数定义与调用
90.原卷第36题
以下关于函数优点的描述中,错误的是( )。
(A) 函数便于阅读
(B) 函数可以使程序更加模块化
(C) 函数可以减少代码重复
(D) 函数可以表现程序的复杂度
答案:D📖 解析
使用函数主要有两个目的:降低编程难度和增加代码复用。表现程序 的复杂度不属于函数的优点,
91.原卷第37题
以下关于 Python 函数的描述中,错误的是( )。
(A) 可以定义函数接受可变数量的参数
(B) 定义函数时,某些参数可以赋予默认值
(C) 函数必须要有返回值
(D) 函数可以同时返回多个结果
答案:C📖 解析
函数可以没有return,此时函数并不返回返回值。当函数使用return 返回多个值时,可以使用一个变量或多个变量来保存结果,
92.原卷第38题
使用Python的函数,需要的步骤不包括( )。
(A) 函数测试
(B) 函数定义
(C) 函数调用
(D) 函数执行
答案:A📖 解析
使用函数的步骤中不包括函数测试,
93.原卷第112题
关于函数作用的描述,错误的选项是( )。
(A) 复用代码
(B) 降低编程复杂度
(C) 提高代码执行速度
(D) 增加代码的可读性
答案:C📖 解析
使用函数主要有两个目的:降低编程难度和增加代码复用。 编程中大量使用函数已经成为一种编程范式,叫做函数式编程,主要思想是 把程序过程尽量写成一系列函数调用,使代码编写更简洁,更易于理解。
94.原卷第144题
关于函数的描述,正确的选项是( )。
(A) 每个递归函数都只能有一个基例
(B) 一个函数中只允许有—条return语句
(C) 定义函数和调用该函数的代码可以写在不同的Python程序里
(D) 每个函数都必须有return语句
答案:C📖 解析
递归函数可以有多个基例,A选项错误,函数内可以存在0条、1条或多条 return语句,B、D选项错误,调用函数的代码可以在另一个python程序中,只 要导入定义函数的模块即可,C选项正确。
95.原卷第175题
关于Python函数的描述,正确的选项是()。
(A) 函数外部定义的列表变量,不可以在函数内部引用其值
(B) 函数内部定义的数字变量,可以在函数之外引用其值
(C) 函数有默认参数的时候,调用函数可以不给该参数赋值
(D) 函数内部定义的列表变量,可以在函数之外引用其值
答案:C📖 解析
在Python语言中,函数外部定义的列表,在函数内部可以直接引用或者使 用部分方法,所以A选项错误,函数内部定义的变星属于局部变量,不可以在函 数外部使用,选项B、D错误。
5.2 参数传递
96.原卷第115题
关于以下代码的描述,错误的选项是( )。
def fact(n):
s = 1
for i in range(1, n+1):
s*=i
return s
(A) 代码中n是可选参数
(B) s是局部变量
(C) s不能在函数外使用
(D) range()函数是Python内置函数
答案:A📖 解析
s是在函数内部定义的变量,称为局部变量,仅在函数内部有效,当函数退 出时变量将不再存在。 函数参数为可选参数时必须指定默认值,n不是可选参数。
97.原卷第176题
以下代码的执行结果是() 。
ls = [ 'try']
def mtry(lt):
lt.append(ls)
return lt
print(mtry(mtry(['try'])))
(A) ['try', [ 'try'], ['try']]
(B) ['try' , 'try', 'try']
(C) try try try
(D) [['try'], ['try'], ['try']]
答案:A📖 解析
观察题目中的代码,程序最后输出mtry(mtry([ 'try']))的返回值,想要知道 此语句返回值需要先计算mtry([ 'try'l)。根据函数中代码可以知道,函数中是ls 添加到参数["try']中,append0方法添加列表,会将列表整体均作为元素添加到 ['try'] 中 , 即 得 到 ['try,['try']] 。 那 么 mtry(mtry(['try'])) 也 就 相 当 于 mtry(['try',[ try']),再次执行函数得到结果['try', ['try'j], [ 'try']],最后输出结果 为['try'. ['try']. ['try']]。
98.原卷第177题
关于函数参数的描述,错误的选项是( ) 。
(A) 采用参数名称传递参数,可以增加程序的可读性
(B) 函数调用时,默认按照位置顺序传递参数
(C) 采用参数名称传递参数,可以不按照参数的默认顺序
(D) 函数的可选参数可以放在非可选参数的前面
答案:D📖 解析
函数的参数顺序必须是可选参数放在非可选参数后面,所以D选项错误。
5.3 return 与返回值
99.原卷第42题
以下关于 Python 语言 return 语句的描述中,正确的是( )。
(A) return只能返回一个值
(B) 函数必须有 return 语句
(C) 函数可以没有return语句
(D) 函数中最多只有一个return语句
答案:C📖 解析
函数中可以有多个return语句。函数可以没有return,此时函数不返 回值。当函数使用return返回多个值时,可以使用一个变量或多个变量保存结果,
100.原卷第113题
关于return语句的描述,正确的选项是( )。
(A) 函数必须有一个return语句
(B) 函数可以没有return语句
(C) 函数最多只有一个return语句
(D) return语句只能返回一个值
答案:B📖 解析
函数可以没有return,此时函数并不返回值。当函数使用return返回多个值 时,可以使用一个变量或多个变量保存结果。
5.4 变量作用域
101.原卷第43题
以下关于Python全局变量和局部变量的描述中,错误的是( )。
(A) 局部变量在函数内部创建和使用,函数退出后变量被释放
(B) 全局变量一般指定义在函数之外的变量
(C) 使用global保留字声明后,变量可以作为全局变量使用
(D) 当函数退出时,局部变量依然存在,下次函数调用可以继续使用
答案:D📖 解析
局部变量指在函数内部定义的变量,仅在函数内部有效,当函数退出 时变量将不再存在,
102.原卷第44题
以下程序的输出结果是( )。
def myf(x = 2.0,y = 4.0):
global sp
sp += x * y
return(sp)
sp = 100
print(sp,myf(4,3))
(A) 112 100
(B) 100 112
(C) 100 100
(D) 112 112
答案:B📖 解析
sp是全局变量,最后输出时,值仍然为100。myf()函数运行时,x的 值为4,y的值为3,sp的值为100+4*3=112,函数返回值为112,
103.原卷第45题
以下程序的输出结果是( )。
def loc_glo( b = 2, a = 4):
global z
z += 3 * a +5 * b
return z
z = 10
print(z, loc_glo (4,2))
(A) 10 36
(B) 32 32
(C) 36 36
(D) 10 32
答案:A📖 解析
z为全局变量,所以值不变,最后输出仍为10。函数中,返回值为:
10+3*2+5*4=36。
104.原卷第114题
以下代码的执行结果是( )。
def func (n):
n=n +2
return n
a= 10
func (a)
print(a)
答案:A📖 解析
a的初始值为10,调用函数func(a),函数的返回值12并未赋值给a,此时a 的值没有改变,所以输出结果为10。
105.原卷第145题
以下代码的执行结果是( )。
def func(m, n):
m=2
s= m*n
return s
m = 5
n = 2
print(func(5,2))
答案:B📖 解析
观察题目中代码,创建函数传递两个参数,然后设置局部变量m为2,计算 出s的值并作为返回值,后续程序创建全局变量n和n,然后调用函数输出返回值。 传递m和n进入函数内,因为函数内将m的值赋值为2,n的值使用的是形参2,所 以计算得s为4,所以执行结果为4。
106.原卷第147题
关于函数全局变量和局部变量的描述,错误的选项是( )。
(A) 在函数内部引用局部变量时可以不用nonlocal保留字声明
(B) 在函数内部引用全局变量时—定要用global声明
(C) 全局变量指在函数外部创建的变量
(D) 在函数内部创建的局部变量,在函数外部不能引用
答案:B📖 解析
在函数内部引用全局变量可以不使用global声明,如果是更改全局变量的话, 一般是需要声明的。
107.原卷第174题
以下代码的执行结果是( )。
k =5
def test(n):
global k
for i in range(n):
k += i
return k
print(k,test(5))
(A) 程序运行错误
(B) 5 15
(C) 5 10
(D) 15 15
答案:B📖 解析
观察题目中代码,首先定义了变量,然后创建了test()函数,此时函数尚未 运行。在print()函数内运行了test()函数,此时传入参数5。在函数丙使用globa 修饰k变量,使得k值在函数内修改也能同步到全局变皇,经过循环此时k值应为 k=5+1+2+3+4=15最后return将值返回到调用函数的位置。但是在输出的时候 需要考虑到print()函数中,k在调用函数之前,所以是先确定k值再运行函数,那 么即使global修饰了k,在调用函数之前的k值也不会变化,所以输出结果为5 15。
108.原卷第193题
关于全局变量和局部变量的描述,错误的选项是( )。
(A) 局部变量标识符不能与任何全局变量的标识符相同,即严格不能重名
(B) 在函数内部弓|用数字类型全局变量时,必须使用 global 保留字声明
(C) 在函数内部弓|用组合类型全局变量时,可以不通过 global 保留字声明
(D) 全局变量在 Python 文件最外层声明时,语句前没有缩进
答案:A📖 解析
在 Python 语言中局部变量可以是任意标志符,因为局部变量在函数结束 时,并相当于被销毁,所以即使与全局变同名,也可以正常运行。
5.5 lambda 与递归
109.原卷第39题
以下程序的输出结果是( )。
f= lambda x:5
f(3)
答案:B📖 解析
匿名函数;f = lambda x:5,f表示函数名 ,x表示形式参数,5表示 表达式,等同于以下函数形式。
def f(x):
return 5
f(5)
本题实参为5执行函数后结果为5,
110.原卷第57题
以下代码的输出结果是( )。
def fibRate(n):
if
n <= 0:
return -1
elif n == 1:
return -1
elif n == 2:
return 1
else:
L = [1, 1]
for i in range(2,n):
L.append(L[-1]+L[-2])
return L[-2]/L[-1]
print(fibRate(5))
(A) -1
(B) 0.625
(C) 0.6
(D) 0.5
答案:C📖 解析
n=5时,执行else后的语句,i的取值范围为range(2,5),即2、3、4。 ls.append(x)的作用是在列表ls最后增加一个元素x。初始状态时,L=[1,1]。第 一次循环,n=2,L[-1]+L[-2]=2,L=[1,1,2];第二次循环,n=3,L[-1]+L[-2]=3,
L=[1,1,2,3];第三次循环,n=4,L[-1]+L[-2]=5,L=[1,1,2,3,5]。循环结束,返
回值L[-2]/L[-1],即3/5=0.6,
111.原卷第146题
以下代码不可能的执行结果是( )。
import random
def func(n):
if n == 1 or n ==2:
return 1
else:
return random.randint(1,n-1)
print(func(10))
答案:D📖 解析
观察题目中代码,先导入random库,然后创建函数,在函数内编写分支语 句,判断n的值,当n为1或者2的时候返回1,否则就返回1到n-1之间的随机整数, 因为调用函数传入了10,所以不满足条件,返回1到9之间的随机整数,则10不 可能是执行结果。
Ch6组合数据类型
6.1 组合数据类型概念
112.原卷第46题
以下不是 Python 组合数据类型的是( )。
(A) 复数类型
(B) 字符串类型
(C) 集合类型
(D) 字典类型
答案:A📖 解析
常见的组合数据类型有集合类型、序列类型和映射类型。序列类型的 典型代表是字符串类型和列表类型,映射类型的典型代表是字典类型。集合类型 是一个元素集合,元素之间无序,相同元素在集合中唯一存在,
113.原卷第75题
不能返回列表数据类型的选项是( )。
(A) list(range())
(B) s.split()
(C) dict.items()
(D) jieba.lcut()
答案:C📖 解析
dict.items()返回字典中的所有键值对信息,返回结果是Python的一 种内部数据类型dict_items,
114.原卷第93题
不能返回列表数据类型的选项是( )。
(A) list(range())
(B) s.split()
(C) dict.items()
(D) s.lcut()
答案:C📖 解析
dict.items()返回字典中的所有键值对信息,返回结果是 Python 的一 种内部数据类型 dict_items,
115.原卷第116题
不属于组合数据类型的选项是( )。
(A) 集合类型
(B) 元组类型
(C) 字典类型
(D) 数组类型
答案:D📖 解析
Python语言中最常用的组合数据类型有3大类,分别是集合类型、序列类型 和映射类型。 序列类型的典型代表是字符串类型、列表类型和元组类型,映射类型的代表 是字典类型。
116.原卷第148题
关于Python组合数据类型的描述,正确的选项是( )。
(A) 列表类型的元素访问需要索引,有正向递增和反向递减两种方式
(B) 集合类型的元素访问需要索引,有正向递增和反向递减两种方式
(C) 元组类型和列表类型都属于集合类型
(D) 字典类型是“键-值”数据项的组合,各键值对元素之间有先后关系
答案:A📖 解析
列表类型访问元素可以通过索引取值的方式,有正向递增索引和反向递减索 引两种方式,A选项正确;集合类型是无序的,所以没有索引,B选项错误;元 组类型和列表类型和 集合类型无关,C选项错误;字典类型是“键-值”数据项的组合,但是字典没有 顺序,所以D选项错误。
117.原卷第149题
关于组合数据类型的描述,错误的选项是( )。
(A) s是一个集合类型变量,则语句"x not in s"表示如果x不是s的元素,返回True,否则返回False
(B) 赋值语句animal = "cat" , "dog", "tiger" , "rabbit",产生一个元组类型变量
(C) s是一个集合类型变量,若s={235,10,50,10},则执行print(s)的结果可能是{10,235,50}
(D) s是一个列表类型变量,则语句"x is in s”表示如果x是s的元素,返回True,否则返回False
答案:D📖 解析
not in表达式判断是否存在,如果不存在返回True,存在返回Fase,A选项 正确;直接将多个元素通过逗号赋值给一个变量,会自动将数据加上括号形成元 组进行赋值,B选项正确;集合是无序不可重复的数据类型,所以会自动去重, 顺序也可能是任意形式,C选项正确;判断是否存在是使用in关键字,不存在is in 表示,D选项错误。
6.2 序列通用操作
118.原卷第20题
以下描述中,错误的是( )。
(A) 如果 s 是一个序列,s =[1,"kate",True],s[3]返回 True
(B) 如果 x 不是 s 的元素,x not in s 返回 True
(C) 如果x是s的元素,x in s返回True
(D) 如果s是一个序列,s =[1,"kate",True],s[-1]返回True
答案:A📖 解析
如果序列长度为L,正向递增需要以最左侧序列符号为0,向右依次递 增,最右侧序列符号为L-1;反向递减序号以最右侧序列符号为-1,向左依次递 减,最左侧序列符号为-L。 选项"如果s是一个序列,s = [1,"kate",True],s[3]返回True"中的索引序号"3" 超过列表的元素范围,出现IndexError错误,返回的结果不是True,
119.原卷第65题
对于序列s,能够返回序列s中第i到第j以k为步长的子序列的表达是( )。
(A) s[i:j:k]
(B) s[i,j,k]
(C) s[i;j;k]
(D) s(i,j,k)
答案:A📖 解析
s[i:j:k]:步骤切片,返回包含序列s第i到j个元素以k为步数的子序列。
6.3 列表
120.原卷第48题
列表变量 ls 共包含 10 个元素,ls 索引的取值范围是( )。
(A) -1到-9(含)的整数
(B) 0到10(含)的整数
(C) 1到10(含)的整数
(D) 0到9(含)的整数
答案:D📖 解析
列表的索引采用正向递增序号或反向递减序号,正向递增序号从0开 始,即ls索引的取值范围是0到9(含)的整数;反向递减符号从-1开始,即ls索引 的取值范围是-1到-10(含)的整数,
121.原卷第50题
以下程序的输出结果是( )。
lt=['绿茶','乌龙茶','红茶','白茶','黑茶']
ls=lt
ls.clear()
print(lt)
(A) 变量未定义的错误
(B) []
(C) ['绿茶','乌龙茶','红茶','白茶','黑茶']
(D) '绿茶','乌龙茶','红茶','白茶','黑茶'
答案:B📖 解析
ls.clear():删除ls中所有元素。对于列表类型,使用等号无法实现真 正的赋值,不能产生新列表。ls = lt语句并不是拷贝lt中的元素给变量ls,而是新 关联了一个引用,即增加一个别名,ls和lt所指向的是同一套内容,所以删除ls 中的元素,lt也随之变成空列表,
122.原卷第51题
以下代码的输出结果是( )。
CList = list(range(5))
print(2 in CList)
(A) 0
(B) False
(C) True
(D) -1
答案:C📖 解析
range(start, stop[, step])表示计数从start开始,到stop结束,但不 包括stop,步长默认为1。start默认从0开始,range(5)等价于range(0,5),则 CList中的元素取值为0、1、2、3、4。 x in S方法的作用是如果x是S的元素,返回True,否则返回False。2是CList中的 元素,所以输出True,
123.原卷第52题
以下代码的输出结果是( )。
ls = ["car","truck"]
def funC(A):
ls.append(A)
return
funC("bus")
print(ls)
(A) ["bus"]
(B) ["car","truck"]
(C) ["car","truck", "bus"]
(D) []
答案:C📖 解析
ls.append(x)的作用是在列表ls最后增加一个元素x。输出["car","truck",
"bus"],
124.原卷第53题
以下关于列表变量ls操作的描述中,错误的是( )。
(A) ls.reverse():反转列表ls中所有元素
(B) ls.append(x):在ls最后增加一个元素
(C) ls.copy():生成一个新列表,复制ls的所有元素
(D) ls.clear():删除ls的最后一个元素
答案:D📖 解析
ls.clear():删除ls中所有元素,
125.原卷第55题
下面代码的输出结果是( )。
letter=['A','B','C','D','D','D']
for i in letter:
if i =='D':
letter.remove(i)
print(letter)
(A) ['A','B','C']
(B) ['A','B','C','D','D']
(C) ['A','B','C','D','D','D']
(D) ['A','B','C','D']
答案:D📖 解析
遍历列表letter,当i== 'D'时,执行letter.remove(i),此时列表letter=['A', 'B', 'C', "D', 'D'],再遍历当i == 'D',执行letter.remove(i),此时列表letter=['A',
'B', 'C', 'D']。
因为列表中的元素随着”D”元素的删除而减少,当删除第一个”D”元素之后, 列表元素的个数即变为5,for循环又是控制循环次数的,因此只遍历5次,当第 二个"D”元素删除时,循环结束束,
126.原卷第56题
以下代码的输出结果是( )。
ls = []
for m in 'AB':
for n in 'CD':
ls.append(m+n)
print(ls)
(A) ABCD
(B) AABBCCDD
(C) ACADBCBD
(D) ['AC', 'AD', 'BC', 'BD']
答案:D📖 解析
Python通过保留字for实现遍历循环,使用方法如下:
for <循环变量> in <遍历结构>
<语句块> 遍历循环可以理解为从遍历结构中逐一提取元素,放在循环变量中,对于每个所 提取的元素执行一次语句块。for语句的循环执行次数是根据遍历结构中元素个 数确定的。 ls.append(x)方法是列表的常用操作方法,作用是在列表最后增加一个元素x。 题目中的代码循环过程如下:
m = A,n = C,m+n = AC;
m = A,n = D,m+n = AD;
127.原卷第60题
以下程序的输出结果是( )。
l1=['aa',[2,3,3.0]]
print(l1.index(2))
(A) 2
(B) 3.0
(C) 3
(D) ValueError
答案:D📖 解析
索引序号从0开始,不能超过列表的元素范围。l1列表中只有两个元 素,l1.index(2)表示取列表中第三个元素,会出错,
128.原卷第62题
以下程序的输出结果是( )。
ls = [12,44,23,46]
for i in ls:
if i == '44':
print('found it! i = ',i)
break
else:
print('not found it ...')
(A) not found it...
(B) found it!i=44
(C) found it!i=44not found it...
(D) found it!i='44'not found it...
答案:A📖 解析
列表ls中的元素是数字类型,判断条件中的'44'是字符串类型,所以 判断条件不符合,最后输出not found it ...,
129.原卷第66题
以下程序的输出结果是( )。
img1 = [12,34,56]
img2 = [1,2,3,4]
def disp1(img):
print(img)
img1 = img2
img1.append([5,6])
disp1(img2)
(A) [12,34,56]
(B) [1,2,3,4,5,6]
(C) [1,2,3,4]
(D) [1,2,3,4,[5,6]]
答案:D📖 解析
img1 = img2的作用是,img1和img2都对[1,2,3,4]对象的引用,img2 会随着img1的改变而改变。ls.append(x)的作用是在列表ls最后增加一个元素x。 [5,6]是作为一个元素被添加进去的,所以最后结果为[1,2,3,4,[5,6]],
130.原卷第67题
执行以下程序后,要输出ab44cd46结果,该执行的选项是( )。
ls = ['ab','44','cd','46']
ls.reverse()
(A) print(''.join(ls[-1::]))
(B) print(''.join(ls))
(C) print(''.join(ls[1:]))
(D) print(''.join(ls[-1::-1]))
答案:D📖 解析
列表切片:<列表或列表变量>[N:M:K] 切片获取列表类型从N到M(不包含M)的以K为步长所对应的元素组成的列表。 ls[-1::-1]中,N为-1,K为-1,表示获取列表从后往前的所有元素,即46cd44ab, 再执行ls.reverse(),将列表中的元素逆序输出,得到ab44cd46。
131.原卷第68题
以下程序的输出结果是( )。
ss = [2,3,6,9,7,1]
for i in ss:
print(max(ss),end = ',')
ss.remove(max(ss))
(A) 9,7,6
(B) 9,7,6,
(C) 9,7,6,3,2,1,
(D) 9,7,6,3,2,1
答案:B📖 解析
for循环的作用是求出列表aa中的最大值,将其输出,以逗号结尾, 并且将这个最大值移出ss列表。 第1次循环,i的取值为ss中的第1个元素,即2,此时最大值为9,输出最大值和 逗号后,ss变为[2,3,6,7,1]; 第2次循环,i的取值为ss中的第2个元素,即3,此时最大值为7,输出最大值和 逗号后,ss变为[2,3,6,1]; 第3次循环,i的取值为ss中的第3个元素,即3,此时最大值为6,输出最大值和 逗号后,ss变为[2,3,1]; ss中此时只有3个元素,i不再取值,循环结束,
132.原卷第73题
以下语句的执行结果是( )。
ls = [120,'120',int('120'),12*10]
print(ls.index(120),ls.count(120))
(A) 0 3
(B) 0 2
(C) 2 4
(D) 1 3
答案:A📖 解析
s.index(x):序列s中第一次出现元素x的位置。列表第一个元素为120, 列表序号从0开始,则ls.index(120)返回值为0。 ls.count(120)用来求出列表中值为120的元素个数,除'120'是字符外,其余值均 为120,个数为3,
133.原卷第118题
关于Python列表操作的描述,错误的选项是( )。
(A) ls是一个列表,ls.insert(j,x)可以在列表ls第j个位置插入一个元素x
(B) ls是一个列表,ls.append(x)可以在列表ls第1个位置插入一个元素x
(C) ls是一个列表,ls.remove(x)将列表ls中出现的第1个元素x删除
(D) ls是一个列表,ls.pop(i)可以返回列表ls中第i个元素,并删除列表中的该元素
答案:B📖 解析
ls.append(x):在列表ls最后增加一个元素。
134.原卷第119题
以下代码的执行结果是( )。
s=[1,"Alice",True]
print(s[1] and s[-1])
(A) True
(B) "Alice"
(C) 1
(D) Alice
答案:A📖 解析
列表索引可以混合使用正向递增序号和反向递减序号,正向的起始值为0, 反向起始值为-1,所以s[1]为"Alice",s[-1]为True,运算结果为True。
135.原卷第141题
以下代码的执行结果是( )。
x = 99
a = list(range(100))
while x < len(a):
a= a[:x]
x -=1
if len(a)== 5:
break
print(a)
(A) [0,1....98,99]
(B) [0,1,2,3,4]
(C) [4,3,2,1,0]
(D) 执行出错
答案:B📖 解析
观察题目中代码,给x变量赋值为99,给a变量赋值list()函数转换range()函 数生成的数据,range()函教生成从0到99一共100个数字的数据,list()函数转换 过后得到0到99的列表。进入循环中,不停的将x的长度减一,此时a每次切片赋 值索引少1的数据,直到的长度等于5时,此时因为每次初片是将最后一个元素删 除,所以剩下的a是前5个元素,也就是01234。
136.原卷第150题
关于列表类型的描述,正确的选项是( )。
(A) list(x)可以将一个整数x转换为列表[x]
(B) 列表ls=[1,2,3,4,5],S=ls[3:4]结果是4,结果是整数类型
(C) 列表ls=[1,2,3,4,5],S=ls[3:4]结果是[4],结果是列表类型
(D) list({"a":1,"b":2})结果为["a",1, "b",2]
答案:C📖 解析
list()函数的参数需要是多元素数据类型,比如元组,字符串字典等,当直接 转换字典的时候,是对字典的键进行操作,等于舍弃字典的值,所以A选项错误, D选项错误;切片[3:4]选取第4位元素到第5位元素,包含第4位不包含第5位,所 以取到4,且返回值为列表类型,B选项错误,C选项正确。
137.原卷第151题
以下代码的执行结果是( )。
ls =["abc",["abcdef","123","xyz"],["abc","xyz","123"],"abc"]
print(len(ls[1][-3]))
答案:B📖 解析
观察题目中代码,通过索引嵌套取值,首先取s的第2个元素为[‘abcdef’,’ 123’,’xyz’],然后索引取此元素的倒数第三个为'abcdef‘,最后len(函数求 得此元素的长度为6。、
138.原卷第152题
以下代码的执行结果是( )。
ls =[]
for i in range(11):
ls.append(i**2)
ls.reverse()
print(ls)
(A) [100,64,36,16,4,0,1,9,25,49,81]
(B) [0,1,4,9,16,25,36,49,64,81,100]
(C) [121,100,81,64,49,36,25,16,9,4,1]
(D) [1,4,9,16,25,36,49,64,81,100,121]
答案:A📖 解析
观察题目中代码,每一次循环都将列表添加一个的平方,并且将列表逆序, 根据分析,列表中数据依次为[0]、[1,0]、[4,0,1]、[9,1,0,4]、[16,4,0,1,9]、
[25,9,1,0,4,16]
、
[36,16,4,0,1,9,25]
、
[49,25,9,1,0,4,16,36]
、
[64,36,16,4,0,1,9,25,49]
、
[81,49,25,9,1,0,4,16,36,64]
和
[100,64,36,16,4,0,1,9,25,49,81]。
139.原卷第178题
以下代码的执行结果是()。
x=[ [3,4,5],[[10,11],[12,13],14]]
print(len(x))
答案:B📖 解析
观察题目中代码,首先创建了x列表,然后用len()函数计算x列表的长度并 输出。列表的长度就是列表中元素的数量,x列表有两个元素,分别是[3,4,5]和 [10,11],[12,13],14],所以长度为2。
140.原卷第179题
以下代码的执行结果是( ) 。
L1=[1,2,3,4]
st=""
for i in L1:
st +=i
print(st)
(A) ‘1234'
(B) 10
(C) 1234
(D) 程序执行错误
答案:D📖 解析
观察题目中代码,首先创建了L1列表和st空字符串,然后循环遍历列表,每 次循环将遍历的元素拼接给st字符串。因为L1中的元素为数字类型不能和字符串 拼接,所以会出现异常。
141.原卷第180题
以下代码的执行结果是( )。
L1=["月亮","河","宽宽","的","河"]
print(L1.index("河"))
答案:A📖 解析
观察题目中代码,首先创建了L1列表,然后输出列表index()方法得到的结 果。index()方法可以查询列表元素并返回对应索引值,仅返回查询到的第一个元 素。题目中查询字符串“河”,所以返回的索引值应为1。
142.原卷第194题
关于 Python 列表类型的描述,错误的选项是( )。
(A) 列表创建后可以修改其中元素,但每个元素类型不能修改
(B) 列表类型的元素可以是列表
(C) 二维数据可以用列表类型表示
(D) 列表类型的元素可以是字典
答案:A📖 解析
在 Python 语言中,列表类型是可变的数据类型,元素可以是任意的数据类 型,也可以任意修改。
143.原卷第195题
以下代码的执行结果是( )。
ls = ['中国', ['北京','上海','广州'], ['河北省','浙江省','广东省'],300,400,500]
print(ls[-4][1][:2])
(A) 河北
(B) 北京
(C) 浙江
(D) 浙江省
答案:C📖 解析
本题考核列表的索引及切片,首先列表索引-4 得到元素['河北省' ,'浙江省 ','广东省 '] ,然后该元素索引1得到元素,‘浙江省' ,接下来将字符串通过[:2]切片 得到字符串'浙江'。
144.原卷第196题
以下代码的执行结果是( )。
s = ['well','good','best','how','do','you','do']
str1 = s[3] +' ' +s[4] +' ' +s[5] +' ' +s[6]
print(str1)
(A) do you do
(B) 执行错误
(C) howdoyoudo
(D) how do you do
答案:D📖 解析
本题考核列表的索引, str1 通过空格及加法将列表的各个元素拼接起来, s[3]代表的是 第四个元素 how' , s[4]代表的是第五个元素'do' , s[5]代表的是第 六个元素' you' , s[6]代表的是第七个元素 do' ,拼接起来就是' how do you do。
6.4 元组
145.原卷第117题
有一组获奖学生名单,从第1名到第6名的学生姓名为:张良,韩梅梅,李 亮,王红,张晓晓,李梅。要求名单一旦创建,数据不能修改,不能打乱先后次 序。适合存储该组数据的数据类型是( )。
(A) 集合类型
(B) 列表类型
(C) 元组类型
(D) 字典类型
答案:C📖 解析
元组类型属于不可变数据类型。列表、字典和集合属于可变数据类型。
6.5 字典
146.原卷第47题
以下不能用于生成空字典的选项是( )。
(A) dict(())
(B) dict()
(C) {}
(D) {[]}
答案:D📖 解析
使用大括号可以创建字典,特殊地,可以创建一个空字典。 dict():生成一个空字典,作用和{}相同。dict(())等同于dict(),
147.原卷第54题
以下关于 Python 字典变量的定义中,错误的是( )。
(A) d = {1:[1,2], 3:[3,4]}
(B) d = {[1,2]:1, [3,4]:3}
(C) d = {(1,2):1, (3,4):3}
(D) d = {'张三':1, '李四':2}
答案:B📖 解析
Python语言中的字典使用大括号{}建立,每个元素是一个键值对,使 用方式如下: {<键1>:<值1>,<键2>:<值2>……<键n>:<值n>} 其中,键和值通过冒号连接,不同键值对通过逗号隔开。字典的键是不可变量而 列表是可变数据类型,
148.原卷第58题
下面的d是一个字典变量,能够输出数字5的语句是( )。
d = {'food':{'cake':1,'egg':5},'cake':2,'egg':3}
(A) print(d['egg'])
(B) print(d['food']['egg'])
(C) print(d['food'][-1])
(D) print(d['cake'][1])
答案:B📖 解析
索引是按照一定顺序检索内容的体系。由于字典元素"键值对"中键是 值的索引,因此,可以直接利用键值对关系索引元素。 字典中键值对的索引 模式如下(采用中括号格式): <值> = <字典变量>[<键>] d['food'][-1]和d['cake'][1]中括号里的内容不是键,与字典类型中的索引模 式不一样;d['egg']执行后的值是3,不是5,
149.原卷第59题
d ={"大海":"蓝色", "天空":"灰色", "大地":"黑色"}
print(d["大地"], d.get("大地", "黄色"))
(A) 黑色黑色
(B) 黑色灰色
(C) 黑色黄色
(D) 黑色蓝色
答案:A📖 解析
d.get(key,default):键存在则返回相应值,否则返回默认值default。 代码执行后的输出结果:黑色 黑色。
150.原卷第61题
为以下程序填空,使得输出结果是{40:'yuwen',20:'yingyu',30:'shuxue'}的 选项是( )。
tb = {'yingyu':20, 'shuxue':30, 'yuwen':40}
stb = {}
for it in tb.items():
print(it)
________________
print(stb)
(A) stb[it[1]]=tb[it[0]]
(B) stb[it[1]]=stb[it[0]]
(C) stb[it[1]]=tb[it[1]]
(D) stb[it[1]]=it[0]
答案:D📖 解析
{}用于生成一个空字典,d.items()返回所有的键值对。在本题中,变 量it中每一次循环存储一对键值对。题面要求将每一对键值对的键和值交换位置, 使用语句stb[it[1]] = it[0],
151.原卷第63题
给以下程序填空,能输出{0:[90,'Aele'],1:[87,'Bob'],2:[93,'lala']}结果的选项 是( )。
x = [90,87,93]
y = ("Aele", "Bob","lala")
z = {}
for i in range(len(x)):
_______________
print(z)
(A) z[i]=[x[i],y[i]]
(B) z[i]=x[i],y[i]
(C) z[i]=list(zip(x,y))
(D) z[i]=x,y
答案:A📖 解析
zip()函数将对象中对应的元素打包成一个个元组,然后返回由这些元 组组成的列表。x[0]=90,y[0]= "Aele",依此类推,能输出题面要求键值对的 语句是z[i] = [x[i],y[i]],
152.原卷第64题
字典d={'Python':123,'C':123,'C++':123},len(d)的结果是( )。
答案:A📖 解析
len(d):字典 d 的元素个数(长度)。字典中每一个元素是一个键值 对,共有 3 个键值对,所以结果为 3,
153.原卷第69题
以下语句的执行结果是( )。
dd={'a':90,'b':87,'c':93}
print(max(dd),min(dd))
(A) c a
(B) 93 90
(C) c b
(D) 93 87
答案:A📖 解析
字典由键值对组成,max(d)输出的是最大值对应的键,min(d)输出的 是最小值对应的键,
154.原卷第70题
以下语句的执行结果是( )。
dd = {'chinese':200, 'pe':187, 'Gana':930}
print(dd.keys())
(A) 200,187,930
(B) 'chinese':'pe':'Gana'
(C) dict_keys(['chinese','pe','Gana'])
(D) ['chinese','pe','Gana']
答案:C📖 解析
字典由键值对组成,dd.keys()返回字典中的所有键的信息,返回结 果是Python的一种内部数据类型dict_keys,
155.原卷第71题
以下程序的执行结果是( )。
x = [90,87,93]
y = ("Aele","Bob","lala")
z={}
for i in range(len(x)):
z[x[i]]=y[i]
print(z)
(A) {'Aele':90,'Bob':87,'lala':93}
(B) {'90':'Aele','87':'Bob','93':'lala'}
(C) {'Aele':'90','Bob':'87','lala':'93'}
(D) {90:'Aele',87:'Bob',93:'lala'}
答案:D📖 解析
z是字典变量,由键值对组成,由z[x[i]]=y[i]可知,x[i]是键,y[i]是值, x列表中的元素为数字,y列表中的元素为字符,所以执行结果为
{90:'Aele',87:'Bob',93:'lala'},
156.原卷第72题
以下语句的执行结果是( )。
dic = {90:'Aele',87:'Bob',93:'lala'}
print(dic.pop(90,-1),len(dic))
(A) Aele 3
(B) -1 3
(C) Aele 2
(D) -1 2
答案:C📖 解析
pop(key[,default])方法删除字典给定键key及对应的值,返回值为被 删除的值。key值必须给出,否则返回default值。题中删除键90及其对应的值, 返回值为Aele,此时字典中元素为2,则长度为2,
157.原卷第121题
以下代码可能的执行结果是( )。
list1 = ['河南','四川','河北','辽宁']
list2 = ['郑州','成都','石家庄','长春','济南']
d={ }
for i in range(len(list1)):
d[list1[i]] = list2[i]
print(d)
(A) {'河北':'石家庄','河南':'郑州','辽宁':'长春','四川':'成都'}
(B) [('河南','郑州'),('四川','成都'),('河北','石家庄'),('辽宁','长春')]
(C) (['河南','四川','河北','辽宁'])
(D) ['河南','四川','河北','辽宁']
答案:A📖 解析
程序中i的取值范围为list1的长度,即0到3,循环四次,每次分别使用list1 的值作为字典d的键,list2对应位置的值作为字典d的值,形成键值对,键与值用 引号连接。
158.原卷第153题
以下代码将打印输出所有女生的名字:
d = {"张良":"男","李明明":"女","李华":"女","张丽":"女"}
for key in d:
if _____ =="女":
print(key)
补充完整横线处代码,正确的选项是( )。
(A) d[key]
(B) d.values(key)
(C) get(key).value
(D) d.value
答案:A📖 解析
观察题目中代码,题目要求输出所有女生的姓名。因为直接遍历字典相当于 遍历字典的键,所以key是姓名,分支语句中判断性别,所以可以通过字典键这 种形式取到值,也就是d[key]。
159.原卷第181题
以下代码的执行结果是( )。
dt = { 'a' : 10, 'b': 20 }
print(type(dt['a']))
(A) <class 'tuple'>
(B) <class 'str'>
(C) <class 'int'>
(D) <class 'dict'>
答案:C📖 解析
观察题目中代码,首先创建了dt字典,然后利用type(函数得到的dt通过'a' 键取出值的数据类型,最后输出。当dt通过a'键取值得到的数据为10, type(10) 的返回值为<class 'int'>。
160.原卷第182题
在以下程序后执行选项中代码,报错的是( )。
d=[{'作者': 'Jone',’密码’:’*****','收藏':[]},{'作品':[‘日出',’平凡人生’]}]
(A) print(d[0]['作者'])
(B) print(d[0]['作者'][4])
(C) print(d[1]['作品'][0])
(D) print(d[1]['作品'][1])
答案:B📖 解析
A选项中d[0]['作者']得到的结果为"jone'正确;B选项在'jone'的基础上取索 引4的值错误;C选项d[1]['作品'][0]得到的结果为'日出`正确;D选项d[1][作品'][1] 得到的结果为'平凡人生'正确。
6.6 集合
161.原卷第78题
S 和 T 是两个集合,对 S&T 的描述正确的是( )。
(A) S 和 T 的交运算,包括同时在集合 S 和 T 中的元素
(B) S 和 T 的并运算,包括在集合 S 和 T 中的所有元素
(C) S 和 T 的差运算,包括在集合 S 但不在 T 中的元素
(D) S 和 T 的补运算,包括几个 S 和 T 中的非相同元素
答案:A📖 解析
S&T 返回一个新集合,包括同时在集合中的 S 和 T 的元素,
Ch7文件与数据格式化
7.1 文件读写
162.原卷第77题
在Python语言中,写文件的操作是( )。
(A) write
(B) writeall
(C) seek
(D) writetext
答案:A📖 解析
Python语言中写文件的操作方法: f.write(s):向文件写入一个字符串或字节流。 f.writelines(lines):将一个元素为字符串的列表整体写入文件,
163.原卷第79题
以下对 Python 文件处理的描述中,错误的是( )。
(A) Python通过解释器内置的open()函数打开一个文件
(B) Python能够以文本和二进制两种方式处理文件
(C) 当文件以文本方式打开时,读写按照字节流方式
(D) 文件使用结束后可以用close()方法关闭,释放文件的使用授权
答案:C📖 解析
当文件以文本方式打开时,读写按照字符串方式;当文件以二进制方 式打开时,读写按照字节流方式,
164.原卷第81题
以下关于文件的描述中,错误的是( )。
(A) 文件打开后,可以用seek()控制对文件内容的读写位置
(B) 采用readlines()可以读入文件中的全部文本,返回一个列表
(C) 使用open()打开文件时,必须要用r或w指定打开方式,不能省略
(D) 如果没有采用close()关闭文件,Python程序退出时文件将被自动关闭
答案:C📖 解析
Python通过open()函数打开一个文件,并返回一个操作这个文件的 变量,语法形式如下: <变量名> = open(<文件路径及文件名>,<打开模式>) open()函数有两个参数:文件名和打开模式。打开模式用于控制使用何种方式打 开文件,open()函数提供7中基本的打开模式,如下: r:只读模式,如果文件不存在,返回异常FileNotFoundError,默认值 w:覆盖写模式,文件不存在则创建,存在则完全覆盖原文件 x:创建写模式,文件不存在则创建,存在则返回异常FileExistsError a:追加写模式,文件不存在则创建,存在则在原文件最后追加内容 b:二进制文件模式 t:文本文件模式,默认值 +:与r/w/x/a一同使用,在原功能基础上增加读写功能,
165.原卷第87题
f=open()可以打开一个文件,关于f的描述错误的是( )。
(A) f是一种特殊的Python变量,执行print(f)时会报错
(B) f是文件对象引用,在程序中表示文件
(C) f.read()可以一次性读入文件全部信息
(D) 执行m=f后,m和f同时表示所打开文件
答案:A📖 解析
Python通过open()函数打开一个文件,并返回一个操作这个文件的 变量,语法形式如下:<变量名> = open(<文件路径及文件名>,<打开模式>) f就是等号左边的变量名,
166.原卷第88题
以下语句的执行结果是( )。
with open('A.txt','w+') as fo:
fo.write('hello')
print(fo.read())
(A) 出现读写异常
(B) 读文件的函数从文件里读到字符串'hello'
(C) 写到文件a.txt里一个'hello'字符串,显示在屏幕上一个'hello'字符串
(D) 写到文件a.txt里一个'hello'字符串
答案:D📖 解析
with open('a.txt','w+') as fo:将文件以读写方式打开,并且读写完会
自动关闭,不需要用close语句来关闭。 fo.write('hello')语句的作用是写到文件a.txt里一个'hello'字符串print(fo.read()) 输出时,文件指针已经指向最末尾了,所以屏幕上没有输出,
167.原卷第123题
执行以下代码后,a.txt文件里的内容是( )。
fo=open("a.txt","w')
×=['天','地','人']
fo.writelines(','.join(x))
fo.close()
(A) 天,地,人
(B) '天','地','人',
(C) 天,地,人,
(D) '天','地','人'
答案:A📖 解析
fo.writelines(','.join(x))的作用:将列表x中的元素以逗号连接成一个字符串, 并写入文件,所以文件内容为"天,地,人"。
168.原卷第155题
文件a.txt的内容如下:
[1,2,3,4]
以下代码的执行结果是( )。
f=open('a.txt','r')
print(f.read().split(","))
f.close()
(A) '1','2','3','4'
(B) [1,2,3,4]
(C) ['[1','2','3','4]']
(D) 1,2,3,4
答案:C📖 解析
C【解析】观察题目中代码,打开文件并将read()方法读取的内容通过split() 方法以逗号切割,然后将切割的数据输出。文件内容是'[1,2,3,4]’,通过逗号切 割得到的数据为['[1', '2', '3', '4]'],所以输出为['[1','2','3','4]]。
169.原卷第183题
关于文件的描述,错误的选项是( ) 。
(A) readline()函数从文件中读入—行
(B) Python程序退出后,打开文件自动关闭,不一定需要close()函数
(C) open()函数的参数'r’表示对文件进行读操作
(D) open()函数的参数'a'表示只读文件
答案:D📖 解析
Python语言open()函数中“a”模式是写模式,所以D选项错误。
7.2 数据维度与 CSV
170.原卷第80题
以下关于Python二维数据的描述中,错误的是( )。
(A) 一种通用的二维数据存储形式是CSV格式
(B) 二维数据由多条一维数据构成,可以看作一维数据的组合形式
(C) 表格数据属于二维数据,由整数索引的数据构成
(D) CSV格式每行表示一个一维数据,用英文半角逗号分隔
答案:A📖 解析
二维数据,也称表格数据,由关联关系数据构成,采用二维表格方式 组织,对应于数学中的矩阵,常见的表格属于二维数据,
171.原卷第82题
以下关于Python二维数据的描述中,错误的是( )。
(A) 从CSV文件获得数据内容后,可以用replace()来去掉每行最后的换行符
(B) CSV文件的每一行是一维数据,可以用列表、元组和字典表示
(C) 若一个列表变量里的元素都是字符串类型,则可以用join()合成字符串
(D) 列表中保存的二维数据,可以通过循环用write()写入CSV文件
答案:B📖 解析
高维数据由键值对类型的数据构成,采用对象方式组织,可以多层嵌 套。高维数据相比一维和二维数据能表达更加灵活和复杂的数据关系,可以用字 典类型表示。一维数据不用字典类型来表示,
172.原卷第83题
假设city.csv文件内容如下( )。 巴哈马,巴林,孟加拉国,巴巴多斯 白俄罗斯,比利时,伯利兹 以下代码的输出结果是:
f = open("city.csv", "r")
ls = f.read().split(",")
f.close()
print(ls)
(A) ['巴哈马, 巴林, 孟加拉国, 巴巴多斯, 白俄罗斯, 比利时, 伯利兹']
(B) ['巴哈马', '巴林', '孟加拉国', '巴巴多斯', '白俄罗斯', '比利时', '伯利兹']
(C) ['巴哈马', '巴林', '孟加拉国', '巴巴多斯\n白俄罗斯', '比利时', '伯利兹']
(D) ['巴哈马', '巴林', '孟加拉国', '巴巴多斯', '\n', '白俄罗斯', '比利时', '伯利兹']
答案:C📖 解析
f.read(size):从文件中读入整个文件内容。参数可选,如果给出,读 入前size长度的字符串或字节流。split(str,num)通过指定分隔符对字符串进行切 片,如果参数num有指定值,则仅分隔num个子字符串。f.read().split(","):从 文件中读入整个文件内容,并以逗号分隔。原文的第一行后有一个换行符"\n", 所以读入文件内容时,这里的字符串应为"巴巴多斯\n白俄罗斯"。 运行代码后的输出结果是['巴哈马', '巴林', '孟加拉国', '巴巴多斯\n白俄罗斯', '比 利时', '伯利兹'],
173.原卷第86题
表格类型数据的组织维度最可能是( )。
(A) 二维数据
(B) 一维数据
(C) 多维数据
(D) 高维数据
答案:A📖 解析
二维数据,也称表格数据,由关联关系数据构成,采用二维表格方式 组织,对应于数学中的矩阵,常见的表格都属于二维数据,
174.原卷第89题
以下关于数据维度的描述,不正确的是( )。
(A) 二维数据处理等同于二维列表的操作
(B) 要处理二维数据的每个元素,需要用循环结构处理
(C) 二维数据用CSV文件格式存储,得用二重循环嵌套实现
(D) CSV文件里是用英文半角逗号来分隔数据元素
答案:C📖 解析
逗号分隔的存储格式叫作CSV格式(逗号分隔值),是一种通用的、 相对简单的文件格式,用途广泛,主要用于不同程序之间的数据交换;CSV文件 不需要特定的字符编码;CSV文件的每一行是一维数据,整个CSV文件是一个二 维数据;一维数据和二维数据都可以使用CSV格式保存成CSV文件,
175.原卷第124题
关于Python数据维度的描述,错误的选项是( )。
(A) 一维数据可以用列表表示,也可以用集合表示
(B) 高维数据可以用字典表示
(C) 二维数据由多个一维数据构成,可以看作一维数据的组合形式
(D) 列表可以表示一维数据,各个元素的类型必须是相同的
答案:D📖 解析
列表可以表示一维数据和二维数据,各个元素的类型可以不同。
176.原卷第154题
文件data.csv里的内容如下: zhang,17,5 wang,10,2 li,19,3 执行以下代码
f=open('data.csv' , 'r')
print(f.readlines())
f.close()
关于执行结果的描述,正确的选项是( )。
(A) 输出三行字符串
(B) 输出三行列表,每行列表里面有一个字符串元素
(C) 输出一行字符串,里面包括三个字符串
(D) 输出一行列表,里面包括三个字符串元素
答案:D📖 解析
观察题目中代码,打开文件并输出文件通过readilnes()方法读取的数据, readlines()方法读取文件全部行内容,每一行内容形成一个字符串,所有字符串 组成一个列表。
177.原卷第156题
关于数据维度的描述,错误的选项是( )。
(A) 一维数据由对等关系的有序或无序数据构成
(B) 列表只能存储二维数据
(C) 二维数据可以看成是多个一维数据的组合形式
(D) .txt格式文件可以存储一维数据和二维数据
答案:B📖 解析
列表可以存储一维数据,也可以嵌套列表存储二维数据,所以B选项错误。
178.原卷第184题
关于数据维度的描述,错误的选项是( ) 。
(A) 列表只能用来表示—维数据
(B) 二维数据可以看作多个—维数据的组合形式
(C) 字典可以表示高维数据
(D) CSV格式可以存储二维数据,每行使用英文半角逗号分隔各数据
答案:A📖 解析
Python语言中,列表类型可以表示—维、二维和多维数据,所以A选项错 误。
Ch8Python 计算生态
8.1 标准库(turtle/random/time)
179.原卷第92题
下面属于Python语言的标准库是( )。
(A) turtle
(B) jieba
(C) scipy
(D) flask
答案:A📖 解析
turtle库为python语言标准库,用于绘制图形,
180.原卷第125题
设置图形绘制速度的turtle库函数是( )。
(A) goto()
(B) speedup()
(C) speed()
(D) getturtle()
答案:C📖 解析
goto(x,y):移动到绝对坐标(x,y)处。 speed():设置画笔的绘制速度,参数为0~10之间。
181.原卷第126题
关于以下代码执行结果的描述,正确的选项是( )。
import random
a =random.randint(1,100)
while not a:
if a<=50 and a>=40:
a = random.random( )
break
print(a)
(A) 1到100之间的整数
(B) 1到100之间的整数或浮点数
(C) 0.0到1.0之间的浮点数
(D) 40到50之间的整数或浮点数
答案:A📖 解析
randint(a,b):生成一个[a,b]之间的整数。 所以a的取值为1到100之间的整数,此时"not a"值为False,while条件不成 立,不执行循环,直接输出a。
182.原卷第157题
turtle库中设置画笔宽度的函数是( )。
(A) turtlesize()
(B) pen()
(C) write()
(D) width()
答案:D📖 解析
在turtle库中turtlesize()函数返回当或设置笔的属性x或y-tretchfactors和 轮廓;pen()函数用于通过一些健/值对在“per-dictionary"中返回或设置笔的属 性;write()函数在屏幕上绘制文本;width()函数设置画笔的宽度。
183.原卷第187题
turtle库中,绘制圆弧的函数是( )。
(A) seth()
(B) eclipse()
(C) forword()
(D) circle()
答案:D📖 解析
seth()函数是用来调整画笔指向的角度; tuetle库中无eclipse()函数; forword()函数是用来移动画笔;circle()函数是用来绘制圆或者绘制圆弧的。
184.原卷第188题
关于Python语言time标准库的描述,错误的选项是( ) 。
(A) localtime()返回系统当前时间对应的struct_time形式
(B) localtime()返回系统当前时间对应的时间戳
(C) strftime()按照指定的格式返回易读字符串形式的时间
(D) mktime()将struct_time对象转换成时间戳
答案:B📖 解析
在time库中,localtime()函数返回的是系统当前时间对应的struct_time形 式。所以B选项错误,
8.2 模块导入
185.原卷第91题
下面哪一种导入方式是错误的( )。
(A) import numpy
(B) import ndarray from numpy
(C) from numpy import *
(D) import numpy as np
答案:B📖 解析
python中导入库的方式主要有以下几种,import 库名
import 库
from 函数名
import 库 as 别名,
8.3 第三方库分类
186.原卷第95题
在 Python 语言中,包含矩阵运算的第三方库是( )。
(A) wxPython
(B) PyQt5
(C) wordcloud
(D) numpy
答案:D📖 解析
numpy 是 Python 的一种开源数值计算扩展第三方库,用于处理数 据类型相同的多维数组,简称"数组"。这个库可用来存储和处理大型矩阵,比 Python 语言提供的列表结构要高效得多。numpy 提供了许多高级的数值编程工 具,如矩阵计算、矢量处理、N 维数据变换等,
187.原卷第96题
在 Python 语言中,能够处理图像的第三方库是( )。
(A) PIL
(B) pyserial
(C) requests
(D) pyinstaller
答案:A📖 解析
PIL库是Python语言在图像处理方面的重要第三方库,支持图像存储、 处理和显示,它能够处理几乎所有的图片格式,可以完成对图形的缩放、剪裁、 叠加以及向图像添加线条、图形和文字等。PIL库可以完成图像归档和图形处理 两方面功能需求,
188.原卷第97题
在Python语言中,属于网络爬虫的第三方库的是( )。
(A) PIL
(B) pyserial
(C) requests
(D) pyinstaller
答案:C📖 解析
Python 语言中网络爬虫的第三方库有 requests、scrapy。所以本地 选 C。
189.原卷第98题
在 Python 语言中,属于网络爬虫领域的第三方库是( )。
(A) PyQt5
(B) numpy
(C) openpyxl
(D) scrapy
答案:D📖 解析
Python网络爬虫领域的第三方库:scrapy和request。numpy是Python 语言中数据分析方向的第三方库,openpyxl是python语言中文本处理方向的第 三方库,PyQt5是Python语言中用户图形界面方向的第三方库,
190.原卷第99题
在Python语言中,不属于机器学习领域第三方库的是( )。
(A) MXNet
(B) Tensorflow
(C) PyTorch
(D) Arcade
答案:D📖 解析
Aracde 是 python 语言中的图形库,
191.原卷第100题
关于 beautifulsoup4 的描述,正确的选项是( )。
(A) 用于处理三维可视化
(B) 用于绘制图形
(C) 这个库能遍历处理HTML网页上的语法元素
(D) 用于解析和处理 HTML 和 XML
答案:D📖 解析
Beautifulsoup4 库,也称为 Beautiful Soup 库或 bs4 库,用于解析 和处理 HTML 和 XML,
192.原卷第127题
属于Python数据分析方向的第三方库是( )。
(A) pandas
(B) moviepy
(C) Django
(D) pefile
答案:A📖 解析
数据分析方向最常用的三个库为:numpy、scipy和pandas。
193.原卷第128题
属于Python机器学习方向的第三方库是( )。
(A) scikit-learn
(B) SQLAlchemy
(C) requests
(D) Click
答案:A📖 解析
机器学习方向最常用的三个库为:scikit-learn、TensorFlow和Theano
194.原卷第159题
属于Python任务调度方向第三方库的选项是( )。
(A) scrapy
(B) doit
(C) pandas
(D) NLTK
答案:B📖 解析
scrapy是网络爬虫方向的第三方库;doit是任务管理和自动化的第三方库; pandas是数据分析的第三方库;NITK是自然语言处理的第三方库。
195.原卷第160题
属于Python网络爬虫方向第三方库的选项是( )。
(A) Click
(B) scikit-learn
(C) scrapy
(D) pytorch
答案:C📖 解析
Click是用于快速创建命令行的第三方库;scikt-learn是用于机器学习的第 三方库;scapy是网络爬虫方向的第三方库;pytorch是用于深度学习的第三方 库。
196.原卷第185题
不能返回列表类型的选项是( )。
(A) s.split()
(B) jieba.lcut()
(C) jieba.cut()
(D) list()
答案:C📖 解析
split()方法可以根据参数切割字符串并返回列表;lcut()函数可以根据jieba 库的内置词典将参数进行分词并返回列表;cut()函数会生成一个可迭代的数据类 型,在迭代的时候再进行分词;list()函数将参数转变为列表数据类型。
197.原卷第189题
属于Python文本处理方向的第三方库是( )。
(A) beautifulsoup4
(B) matplotlib
(C) vispy
(D) wxpython
答案:A📖 解析
beautifulsoup4库是用于文本处理方向的第三方库,一般用于处理网页信 息;matplotlib是用于数据可视化方向的第三方库;vispy也是用于数据可视化 方向的第三方库;wxpython是用于图形界面方向的第三方库。
198.原卷第190题
属于Python网络爬虫方向的第三方库是( ) 。
(A) myqr
(B) numpy
(C) scrapy
(D) pillow
答案:C📖 解析
myqr是用于二维码制作的第三方库;numpy是用于数据分析方向的第三 方库;scrapy是用于网络爬虫方向的第三方库;pillow是用于图像处理的第三方库。
199.原卷第197题
属于 Python 图像处理方向的第三方库是( )。
(A) matplotlib
(B) opencv-python
(C) scrapy
(D) wxpython
答案:B📖 解析
scrapy 是 Python 网络爬虫方向的框架。 matplotlib 是 Python 数 据可视化方向的 第三方库。opencv-python 是 Python 图像处理方向的第三 方库。wxpython 是 Python图形界面方向的第三方库。
200.原卷第200题
属于 Python 网络爬虫方向的第三方库是( )。
(A) pytorch
(B) requests
(C) pillow
(D) NLTK
答案:B📖 解析
requests是Python网络爬虫方向的第三方库。NLTK是Python自然语言 处理的第三方库。pytorch是Python 机器学习方向的第三方库。pillow是 Python图像处理的第三方库。