2022年3月计算机二级python选择题在线题库1/15 题库 IT考试网 · 2021年10月14日 17:28 · 20440阅读 本套题共40道选择题,每题1分; 1.下列叙述中正确的是( )。 A.线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的 B.线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构 C.线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构 D.线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性 B 【解析】线性表的链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,所以一般要多于顺序存储结构。 2.下列叙述中正确的是( )。 A.栈是一种先进先出的线性表 B.队列是一种后进先出的线性表 C.栈与队列都是非线性结构 D.以上三种说法都不对 D 【解析】栈是一种先进后出的线性表,队列是一种先进先出的线性表,栈与队列都是线性结构。 3.软件测试的目的是( )。 A.评估软件可靠性 B.发现并改正程序中的错误 C.改正程序中的错误 D.发现程序中的错误 D 【解析】软件测试是为了发现错误而执行程序的过程,测试要以查找错误为中心,而不是为了演示软件的正确功能。 4.在软件开发中,需求分析阶段产生的主要文档是( )。 A.软件集成测试计划 B.软件详细设计说明书 C.用户手册 D.软件需求规格说明书 D 【解析】需求分析阶段的工作可以概括为:需求获取、需求分析、编写需求规格说明书、需求评审四个方面。 5.软件生命周期是指( )。 A.软件产品从提出、实现、使用维护到停止使用退役的过程 B.软件从需求分析、设计、实现到测试完成的过程 C.软件的开发过程 D.软件的运行维护过程 A 【解析】通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。 6.面向对象方法中,继承是指( )。 A.一组对象所具有的相似性质 B.一个对象具有另一个对象的性质 C.各对象之间的共同性质 D.类之间共享属性和操作的机制 D 【解析】继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。广义的说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,所以说继承是指类之间共享属性和操作的机制。 7.层次型、网状型和关系型数据库划分原则是( )。 A.记录长度 B.文件的大小 C.联系的复杂程度 D.数据之间的联系方式 D 【解析】层次模型的基本结构是树形结构,网状模型是一个不加任何条件限制的无向图,关系模型采用二维表来表示,所以三种数据库的划分原则是数据之间的联系方式。 8.一个工作人员可以使用多台计算机,而一台计算机可被多个人使用,则实体工作人员与实体计算机之间的联系是( )。 A.一对一 B.一对多 C.多对多 D.多对一 C 【解析】因为一个人可以操作多个计算机,而一台计算机又可以被多个人使用,所以两个实体之间是多对多的关系。 9.数据库设计中反映用户对数据要求的模式是( )。 A.内模式 B.概念模式 C.外模式 D.设计模式 C 【解析】数据库系统的三级模式是概念模式、外模式和内模式。概念模式是数据库系统中全局数据逻辑结构的描述,是全体用户公共数据视图。外模式也称子模式或用户模式,它是用户的数据视图,给出了每个用户的局部数据描述。内模式又称物理模式,它给出了数据库物理存储结构与物理存取方法。 10.有三个关系R、S和T如下: 则由关系R和S得到关系T的操作是( )。 A.自然连接 B.差 C.交 D.并 B 【解析】关系T中的元组是R关系中有而S关系中没有的元组的集合,所以进行的是差的运算。 11.下列关于Python的描述正确的是( )。 A.代码的缩进错误导致的是逻辑错误 B.跳跃结构是Python的流程结构之一 C.Python支持的数据类型包括char、int和float等 D.Python内存管理中,变量无须事先创建和赋值,而是可以直接使用 A 【解析】Python包括三种控制结构:顺序结构、分支结构和循环结构;Python支持的数据类型有数字类型和字符串类型;Python变量使用前需要定义。 12.下列关于分支结构的描述错误的是( )。 A.分支结构包括单分支结构、二分支结构和多分支结构 B.单分支结构的书写形式包括(if-else) C.多分支结构通常适用于判断一类条件或同一个条件的多个执行路径 D.使用多分支结构时需要注意多个逻辑条件的先后顺序,避免逻辑上的错误 B 【解析】单分支结构的书写形式为: if <条件>: <语句块> 二分支结构的书写形式为: if <条件>: <语句块1> else: <语句块2> 13.以下关于Python的描述正确的是( )。 A.字典的创建必须使用dict()函数 B.列表和字符串属于序列,但元组不属于序列 C.Python只有一种内置的映射类型,就是字典 D.字符串可以进行切片赋值 C 【解析】dict()函数和{}都可以创建字典;序列类型包括列表、元组和字符串;字符串可以切片访问,但是不能赋值。 14.在Python语言中,不属于组合数据类型的是( )。 A.浮点数类型 B.列表类型 C.字典类型 D.字符串类型 A 【解析】Python中组合数据类型包括元组、列表、字典和集合等。 15.在Python语言中,使用for···in方式形成的循环不能遍历的类型是( )。 A.复数 B.列表 C.字典 D.字符串 A 【解析】for…in遍历结构可以是字符串、文件、range()函数和组合数据类型。 16.下列不属于处理Python中字典的方法的是( )。 A.pop() B.replace() C.get() D.popitem() B 【解析】pop()方法:键存在则返回相应值,同时删除键值对,否则返回默认值;get()方法:若访问的项不存在于字典中,返回默认值,若存在,则返回键对应的值;popitem()方法:随机从字典中取出一个键值对,以元组(key,value)形式返回,同时将该键值对从字典中删除。replace()方法是字符串的操作方法,在字符串中用新的子串替换旧的子串,返回字符串的副本。 17.下列说法正确的是( )。 A.set()可以将任何类型转换为集合类型 B.remove()方法删除集合中的元素,不管元素存不存在都不报错 C.集合中的元素不可重复,元素类型只能是不可变数据类型 D.集合元素是有序的 C 【解析】set()函数将其他组合数据类型变成集合类型;remove()删除集合中指定的元素,不存在则产生KeyError异常;集合元素是无序的,集合的输出顺序与定义顺序可以不一致。 18.下列哪个语句在Python中是非法的?( ) A.x = y = z = 1 B.x = (y = z + 1) C.x,y = y,xD.x += y B 【解析】赋值运算的一般形式为:变量=表达式,左边只能是变量。选项A是连续赋值,选项C是序列赋值,选项D可以写为x=x+y。 19.以下选项中,Python不支持的数据类型是( )。 A.int B.char C.float D.string B 【解析】Python不支持char类型,只支持数字类型和字符串类型。其中数字类型包括整数、浮点数和复数。 20.以下关于元组的描述正确的是( )。 A.元组和列表相似,所有能对列表进行的操作都可以对元组进行 B.创建元组时,若元组中仅包含一个元素,在这个元素后可以不添加逗号 C.元组中的元素不能被修改 D.多个元组不能进行连接 C 【解析】元组和列表相似,但并不是所有能对列表进行的操作都可以对元组进行,如可以对列表进行修改元素,但对元组则不可以;创建元组时,即使元组中仅包含一个元素,也要在这个元素后添加逗号;多个元组可以使用“+”号进行连接。 21.下面不是“+”的用法的是( )。 A.字符串连接 B.逻辑与 C.算术加法 D.单目运算 B 【解析】“+”号的运算包括字符串连接、算术加法和单目运算。 22.下面代码的输出结果为( )。 for i in range(8): if i%2 != 1: continue else: print(i, end=”,”) A.0, B.1, C.1,3,5,7, D.0,2,4,6, C 【解析】该程序段是输出8以内的奇数,continue语句只结束本次循环,不终止整个循环的执行。 23.不能使下面代码结束的是( )。 while True: inp = eval(input(“请输入一个数值:”)) if inp // 3: break A.2 B.3 C.4 D.5 A 【解析】while循环条件一直为True,即无限循环,只要“inp // 3”条件为真,进入循环,则执行break语句,即可跳出while循环。2 // 3 的值为0,条件为假,不执行break语句,无法结束程序执行。 24.以下不属于Python中异常处理结构的是( )。 A.try-except B.try-except-if C.try-except-else D.try-except-finally B 【解析】Python中异常处理结构有try-except、try-except-else和try-except-finally,没有选项B的用法。 25.以下语句不会引发异常的是( )。 A.a = b = 3 +1 j B.1 + “1” C.3 / 0 D.print “no error” A 【解析】不同类型之间不能相互运算;除数不能为0;print “no error”语句是Python 2.X版本系列的语法,不适用Python 3.x系列。 26.以下关于Python 处理二进制文件的描述中,错误的是( )。 A.Python 不可以处理PDF文件 B.Python 能处理Excel文件 C.Python 能处理音频文件 D.Python 能处理图形图像文件 A 【解析】Python能处理的二进制文件包含图形图像文件、音频文件、视频文件、可执行文件、各种数据库文件、各类Office文件等。 27.Python 中文件的打开模式不包含( )。 A.’a’ B.’b’ C.’c’ D.’+’ C 【解析】Python中open()函数提供了7种基本的文件打开模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+组合使用。 28.如果文件a.txt在目录’C:\\A’下,执行以下代码会发生什么操作?( ) import os os.rmdir(r’C:\\A’) A.删除文件夹A,保留文件a.txt B.删除文件夹A和文件a.txt C.删除文件a.txt,保留文件夹A D.OSError D 【解析】使用rmdir()删除目录之前要先清除其中所有的文件,否则会报OSError错误。 29.下面代码的输出结果是( )。 def fun(a,b): t = a a = b b = t print(a,b) fun(pow(3,2),pow(2,3)) A.3 2 B.2 3 C.8 9 D.9 8 C 【解析】pow(3,2)的结果为9,pow(2,3)的结果为8,定义的函数fun()的作用为交换输入的a和b的值,因此结果为8 9。 30.下面代码的输出结果是( )。 def fun(x,y,z): u = x + y – z print(u) fun(1+2j,5,4-1j) A.NameError B.(2+3j) C.2 D.3j B 【解析】fun()函数进行加减计算,输入为复数,按复数加减运算法则计算结果为(2+3j)。 31.下面属于Python语言的标准库是( )。 A.turtle B.jieba C.scipy D.flask A 【解析】turtle库是Python的标准库,用于基本图形的绘制;jieba库是Python的第三方中文分词库;scipy是数据分析方向的第三方库;flask是Web开发方向的第三方库。 32.下面关于Python中lambda匿名函数的说法错误的是( )。 A.lambda函数拥有自己的命名空间,不能访问自己参数列表之外或全局命名空间的参数 B.lambda的主体是一个表达式,而不是一个代码块 C.使用lambda匿名函数省去了定义函数的过程,代码更加精简 D.f = lambda x : x * x,匿名函数lambda冒号前的x表示函数名称 D 【解析】lambda冒号前的x代表的是函数的参数,所以D项错误。 33.下面代码的输出结果是( )。 def f(n): if n == 1: return 1 else: return n*f(n-1) print(f(4)) A.24 B.4 C.0 D.10 A 【解析】该代码的功能是根据传入的参数求取该数的阶乘,经过一系列的运算将结果返回,4的阶乘为24。 34.下面关于Python中模块导入的说法错误的是( )。 A.Python可以导入一个模块中的特定函数 B.通过用逗号分隔函数名,可根据需要从模块中导入任意数量的函数 C.使用#号(#)运算符可以导入模块中的所有函数 D.Python中可以给模块指定别名,通过给模块指定简短的别名,可更轻松调用模块中函数 C 【解析】Python中导入模块中的所有函数用的是星号(*)运算符而不是井号(#)运算符,所以C选项错误。 35.下面关于Python中实参和形参的说法错误的是( )。 A.在函数定义时的参数被称为形参,形参不是实际存在的变量 B.可选参数一般都放置在非可选参数的后面 C.实参必须是一个常量 D.形参存在的目的是用来接收调用函数时传入的实参 C 【解析】Python中函数定义时的参数称为形参,调用时的参数称为实参。实参可以是常量、变量、表达式、函数等。调用函数时,形参用来接收实参的值。 36.下面是Python的内置函数的是( )。 A.linspace(a, b, s) B.eye(n) C.bool(x) D.fabs(x) C 【解析】A、B两项都是numpy库中的函数,numpy.linspace(a, b, s)的作用是根据起止数据等间隔地生成数组;numpy.eye(n)的作用是生成单位矩阵。D选项是math库中的函数,math.fabs(x)的作用是取x的绝对值。C选项是Python的内置函数,作用是将x转换为布尔型,所以C项正确。 37.下面代码输出的结果是( )。 a = divmod(5, 2) b = divmod(2, 6) c = set(a + b) print(sum(c)) A.3 B.5 C.2 D.0 A 【解析】divmod(a, b)函数返回的是两个数值的商和余数,那么a和b的值就分别是(2, 1)和(0, 2),而c是把a、b相加后转为集合型,那么a+b为(2, 1, 0, 2),转成集合后即为{0, 1, 2},最后是取总和的sum函数,所以相加起来是的总和为3。 38.下面关于Python中函数参数的说法错误的是( )。 A.在函数定义时必须固定参数的数量 B.使用位置参数传参时实参的数量和顺序必须和函数声明时的参数一样 C.若是参数有默认值,在调用函数时没有给参数赋值,调用的函数就会使用这个默认值 D.关键字参数传参是指在调用函数时通过参数名传递值 A 【解析】在Python中,在函数定义时是可以设计可变数量参数的,通过在参数前加星号(*)实现。可变参数在定义时只有两种变现形式:*param和**param,前者表示可以接受多个位置参数收集的实参组成一个元组,后者表示可以接收多个关键字参数收集的实参名和值组成一个字典。 39.下面关于Python中函数的说法错误的是( )。 A.函数的一个优点是方便修改,更易扩展 B.函数名是可以使用保留字的 C.函数名必须以下划线、中文或字母开头 D.函数名区分大小写 B 【解析】函数名不可以使用Python中的保留字,所以选B项。 40.下面代码的输出结果是( )。 words = “hello Python world!” f = lambda x: len(x) for i in words.split(): print(f(i),end=” “) A.5 5 5 B.5 6 6 C.6 6 6 D.11 11 11 B 【解析】该代码是一个匿名函数和split()方法的结合使用。split()方法把字符串words以空格分隔,返回的是列表类型。通过for循环把列表元素赋值给变量i,然后调用函数f计算每个单词的长度,所以输出的是5 6 6。 Loading … 本文来自网络,不代表IT考试网立场,转载请注明出处:https://www.itkaoshi.net/3187.html