山东省枣庄市全国计算机等级考试Python语言程序设计预测试题(含答案)_第1页
山东省枣庄市全国计算机等级考试Python语言程序设计预测试题(含答案)_第2页
山东省枣庄市全国计算机等级考试Python语言程序设计预测试题(含答案)_第3页
山东省枣庄市全国计算机等级考试Python语言程序设计预测试题(含答案)_第4页
山东省枣庄市全国计算机等级考试Python语言程序设计预测试题(含答案)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

山东省枣庄市全国计算机等级考试Python语言程序设计预测试题(含答案)学校:________班级:________姓名:________考号:________

一、单选题(30题)1.以下关于Python列表的描述中,正确的是()。

A.列表的长度和内容都可以改变,但元素类型必须相同

B.不可以对列表进行成员运算操作、长度计算和分片

C.列表的索引是从1开始的

D.可以使用比较操作符(如>或<等)对列表进行比较

2.下面代码的输出结果是()。n=2deff(a):n=bool(a一2)returnnb=f(2)print(n,b)

A.20B.0TrueC.2FalseD.0False

3.下面对于类的说法错误的是()。

A.类是一种实例

B.在类进行实例化时将会首先执行该类中的int方法

C.在对类进行实例化时,传入的实参不用带上self,它在类的执行过程中将自行带上

D.类中的变量前带有前缀self意味着此变量在类中任意位置可以使用

4.设栈与队列初始状态为空。首先A、B、C、D、E依次人栈,再F、G、H、I、J依次人队;然后依次出找至栈空,再依次出队至队空。则输出序列为()。

A.F,G,H,I,J,A,B,C,D,E

B.F,G,H,I,J,E,D,C,B,A

C.E,D,C,B,A,J,I,H,G,F

D.E,D,C,B,A,F,G,H,I,J

5.下面关于Python语言的说法正确的是()。

A.Python不支持面向对象程序设计

B.Python中使用的所有函数库,都是采用Python语言编写的

C.Python中的内置函数需要用关键字import来导入,而不能直接使用

D.Python中如果导入了某个模块,在后面的代码中就可以使用它的所有公共函数、类和属性

6.下面关于递归函数,描述错误的是()。

A.递归函数必须有一个明确的结束条件

B.递归函数就是一个函数在内部调用自身本身

C.递归效率不高,递归层次过多会导致栈溢出

D.每进入更深一层的递归时,问题规模相对于前一次递归是不变的

7.以下代码的输出结果是()。Test_list=list(range(6))Print(6inTest_list)

A.6B.6inTest_listC.TrueD.False

8.以下关于函数返回值的描述中,正确的是()。

A.Python函数的返回值个数很灵活,可以没有返回值,可以有一个或多个返回值

B.函数定义中最多含有一个return语句

C.在函数定义中使用return语句时,至少有一个返回值

D.函数只能通过print语句和return语句给出运行结果

9.以下代码的输出结果是()。defHello(famlyName,age):ifage>50:print(”您好!”+famlyName+”奶奶”)elifage>40:print(”您好!”+famlyName+”阿姨”)elifage>30:print(”您好!”+famlyName+”姐姐”)else:print(”您好!”+”小”+famlyName)Hello(age=43,famlyName=”赵”)

A.您好!赵奶奶B.您好!赵阿姨C.您好!赵姐姐D.函数调用出错

10.关系数据库中的键是指()。

A.关系的所有属性B.关系的名称C.关系的专用保留字D.能唯一标识元组的属性或属性集合

11.在Python中,不属于机器学习领域第三方库的是()。

A.TensorFlowB.timeC.pytorchD.mxnet

12.以下关于random库的描述,错误的是()。

A.random库是Python的第三方库

B.通过fromrandomimport*可以引入random库

C.设定相同种子,每次调用随机函数生成的随机数相同

D.通过importrandom可以引入random库

13.下面属于应用软件的是()。

A.安卓(Android)操作系统B.交通管理appC.C语言编译器D.数据库管理系统

14.不属于Python机器学习第三方库的是()。

A.PylonsB.tensorflowC.kerasD.mxnet

15.确定软件项目是否进行开发的文档是()。

A.需求分析规格说明书B.可行性报告C.软件开发计划D.测试报告

16.以下程序的输出应该是()。ls=[[0,1],[5,6],[7,8]]lis=[]foriinrange(len(ls)): lis.append(ls[i][1])print(lis)

A.[1,6,8]B.[0,5,7]C.[0,6,8]D.[0,1]

17.执行以下程序,输出结果是()。y=‘中文’X=‘中文字’print(x>y)

A.NoneB.FalseC.FalseorFalseD.True

18.下面属于P)rthon文本处理方向的第三方库的是()。

A.PILB.mayaviC.TVTKD.pdfminer

19.在Python中,进行写文件操作时定位到某个位置所用到的方法是()。

A.write()B.writeall()C.seek()D.writetext()

20.以下代码的输出结果是()。print(0.1+0.2==0.3)

A.一1B.TrueC.FalseD.0

21.下列选项中不属于结构化程序设计原则的是()。

A.可封装B.自顶向下C.模块化D.逐步求精

22.在面向对象方法中,不属于”对象”基本特点的是()。

A.一致性B.分类性C.多态性D.标识唯一性

23.下面代码的输出结果是()。x=10whilex:x一=1ifx%2:print(x,end=”)else:pass

A.86420B.975311C.97531D.864200

24.以下程序的输出结果是()。a=3.6e-1b=4.2e3print(b-a)

A.4199.64B.7.8e2C.0.6e-4D.4199.064

25.请问以下代码执行的结果是()whileTrue:i=0print(i)ifi==7:breakA.死循环,一直输出0B.输出到6后,结束循环C.输出到7后,结束循环D.输出到8后,结束循环

26.下面属于Python的标准库的是()。

A.turtleB.jiebaC.SciPyD.Flask

27.在Python中,将二维数据写入CSV文件,最可能使用的方法是()。

A.write()B.split()C.join()D.exists()

28.以下属于Python中Web开发的第三方库的是()。

A.DjangoB.TinyDBC.audiolazyD.Pattern

29.执行以下代码的结果是?A.300B.400C.500D.600

30.以下不能创建一个字典的语句是()。

A.dic={}

B.dic={l:5}

C.dic={(1,2):"use"}

D.dic={[1,2]:"use"|

二、判断题(10题)31.使用Python列表的方法insert()为列表插入元素时会改变列表中插入位置之后元素的索引。

A.是B.否

32.Python标准库threading中的Lock、RLock、Condition、Event、Semaphore对象都可以用来实现线程同步。

A.是B.否

33.定义Python函数时,如果函数中没有return语句,则默认返回空值None。

A.是B.否

34.通过对象不能调用类方法和静态方法。

A.是B.否

35.表达式pow(3,2)==3**2的值为True。

A.是B.否

36.在函数内部,既可以使用global来声明使用外部全局变量,也可以使用global直接定义全局变量。

A.是B.否

37.在Python3.5中运算符+不仅可以实现数值的相加、字符串连接,还可以实现列表、元组的连接和集合的并集运算。

A.是B.否

38.表达式list('[1,2,3]')的值是[1,2,3]。

A.是B.否

39.在编写应用程序时,应合理控制线程数量,线程并不是越多越好。

A.是B.否

40.使用正则表达式对字符串进行分割时,可以指定多个分隔符,而字符串对象的split()方法无法做到这一点。

A.是B.否

三、填空题(10题)41.表达式list(filter(lambdax:x>2,[0,1,2,3,0,0]))的值为_________。

42.正则表达式模块re的__________方法用来编译正则表达式对象。

43.表达式16**0.5的值为__________。

44.切片操作list(range(6))[::2]执行结果为________________。

45.已知x='123'和y='456',那么表达式x+y的值为______________。

46.已知列表对象x=['11','2','3'],则表达式max(x)的值为___________。

47.Python关键字elif表示__________和___________两个单词的缩写。

48.已知x={1:1,2:2},那么执行语句x[2]=4之后,len(x)的值为____________。

49.Python安装扩展库常用的是_______工具。

50.表达式'a'+'b'的值为_____________。

四、操作题(3题)51.考生文件夹下存在一个文件PY101.py,请写代码替换横线,不修改其他代码,实现以下功能:

键盘输入正整数n,按要求把n输出到屏幕,格式要求:宽度为25个字符,等号字符(=)填充,右对齐,带千位分隔符。如果输入正整数超过25位,则按照真实长度输出。

例如:键盘输入正整数n为1234,屏幕输出===================1,234

试题程序:

#请完善如下代码

s=input()

print(”{________(1)_________}”.format(________(2)_________))

52.考生文件夹下存在一个文件“PY201.py”,请写代码替换横线,不修改其他代码,实现以下功能。使用turtle库中的pencolor()和fillcolor()方法为图形着色(画笔颜色为黑色,填充颜色为红色),使用set-up()方法在桌面(400,400)的位置创建600像素×600像素的画布窗体,效果如下所示。试题程序#请在_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码fromturtleimport*defcurvemove():foriinrange(200):right(1)forward(1)setup(600,600,400,400)hideturtle()_____(1)_____('black')_____(2)_____("red")pensize(2)begin_fill()left(140)forward(111.65)curvemove()left(120)curvemove()forward(111.65)end_fill()penup()goto(-27,85)pendown()done()

53.考生文件夹下存在一个文件“PY201.py”,请写代码替换横线,不修改其他代码,实现以下功能。使用turtle库的turtle.seth()函数和turtle.fd()函数绘制一个边长为100像素的三角形,效果如下所示。

试题程序:#请在_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码importturtleforiinrange(_____(1)_____):turtle.seth(_____(2)_____)_____(3)_____(100)

参考答案

1.D列表是包含0个或多个元素的有序序列,属于序列类型。列表用中括号([])表示,由于列表属于序列类型,故继承了序列类型的所有属性和方法。索引是列表的基本操作,用于获得列表中的一个元素,该操作沿用序列类型的索引方式,即正向递增序号或反向递减序号,使用中括号作为索引操作符,索引号不得超过列表的元素范围,否则将产生lndexError错误。索引下标从0开始。列表可以进行元素增加、删除、替换、查找等操作。列表没有长度限制,元素类型可以不同,能够包含其他的组合数据类型,可以使用比较操作符(如>或<等)对列表进行比较,也可以对列表进行成员运算操作、长度计算和分片。故D项正确。

2.C这段代码是全局变量和局部变量以及Python内置函数bool()的一个结合。在函数内部的局部变量名和函数外部全局变量名相同时,调用函数时,总是先找到函数内部的局部变量名,所以当a为2时,经过布尔型转换之后的a一2,即b为False,而在函数外部只能访问全局变量名,所以n仍为2,C项正确。

3.AA选项中类只是一种抽象事物的分类,对象才是一种实例。本题选择A选项。

4.D找称为“后进先出”表或“先进后出”的线性表;队列称为“先进先出”或“后进后出”的线性表。A、B、C、D、E依次入栈,则依次出栈顺序为E、D、C、B、A;F、G、H、I、J依次入队,则依次出队顺序为F、G、H、I、J。故输出序列为E,D,C,B,A,F,G,H,I,J。本题选择D选项。

5.DA选项,Python是支持面向对象程序设计的;B选项,并不是所有的函数库都是采用Python语言编写的,很多采用C、C++、Java等语言编写的专业库可以经过简单的接口封装供Python程序调用;C选项,Python中的内置函数可以直接使用而不需要用import来导入。D选项说法正确。

6.DA选项正确,递归函数必须要有一个明确的结束条件作为递归的出口;B选项正是递归函数的含义,正确;C选项正确,在计算机中,函数调用是通过栈这种数据结构实现的,每当进入一个函数调用,栈就会加一层栈帧,每当函数返回,栈就会减一层栈帧,由于栈的大小不是无限的,所以,递归调用的次数过多,会导致栈溢出;D选项,每当进入更深一层的递归时,问题规模显然会相对前一次递归减小。

7.DTest_list是列表类型,6inTest_list表示如果6是列表Test_list的元素,返回True,否则返回False。

8.A在Python中,return语句用来结束函数并将程序返回到函数被调用的位置继续执行。re-turn\n语句可以出现在函数中的任何部分,可以同时将0个、1\n个或多个函数运算结果返回给函数被调用处的变量。函数可以没有return语句,此时函数不返回值。当函数使用return语句返回多个值时,这些值形成了一个元组数据类型,由圆括号和逗号分隔,如(a,b,c),可以使用一个变量或多个变量保存结果。本题选择A选项。

9.B将实参age=43,famlyName=”赵”分别赋给形参age和famlyName,之后进入多分支结构进行判断,因为40<age=43<50,执行第一个elif后面的语句,用”+”进行字符串连接,故输出“您好!赵阿姨”。本题选择B选项。

10.D在关系(二维表)中凡是能唯一标识元组的最小属性集称为该关系的键或者码。

11.B在Python中,time是Python重要的标准库之一,用于处理时间相关的问题,不属于机器学习领域的第三方库。TensorFLow、PyTorch、mxnet均属于机器学习领域第三方库。本题选择B选项。

12.Arandom库用于产生各种分布的伪随机序列,是Python的标准库,而不是Python的第三方库。本题选择A选项。

13.B计算机软件按功能分为应用软件、系统软件、支撑软件(或工具软件)。安卓(Android)操作系统、数据库管理系统均属于系统软件,C语言编译器属于支撑软件,交通管理app属于应用软件。

14.APylons是基于Python的一个Web开发框架的第三方库,keras、tensorflow和mxnet是Python机器学习领域的第三方库。

15.B可行性报告产生于软件定义阶段,用于确定软件项目是否进行开发。

16.Alen()函数获得列表ls的长度,range()函数起到循环次数的作用,append()方法在列表lis最后增加元素。列表ls存储的元素是列表,访问时需要使用索引嵌套。本题选择A选项。

17.D在Python中比较两个字符串的大小,要从第一个字符开始比较,只要比较出了大小就结束。本题中,x和y的前两个字符相同,但y没有第三个字符,所以x大,则x>y的结果为True。本题选择D选项。

18.Dmayavi和TVTK是数据可视化方向的第三方库,PIL是图像处理方面的第三方库。本题选择D选项。

19.C在Python中,进行写文件操作时定位到某个位置所用到的方法是seek()。设f为文件变量,用法为f.\nseek(offset);含义为改变当前文件操作指针的位置;offset的值为0表示文件开头,为2表示文件结尾。本题选择C选项。

20.C在Python语言中,0.1+0.2=0.30000000000000004。原因是:对于十进制,它只能表示以进制数的质因子为分母的分数。10的质因子有2和5,因此1/2、1/4、1/5、1/8和1/10都可以精确表示;相反,1/3、1/6和1/7都是循环小数,因为它们的分母使用了质因子3或者7。二进制下(进制数为2),只有一个质因子,即2,因此只能精确表示分母质因子是2的分数。二进制中,1/2、1/4和1/8都可以被精确表示,但1/5或者1/10就变成了循环小数。所以,在十进制中能够精确表示的0.1与0.2(1/10与1/5),到了计算机所使用的二进制中就变成了循环小数。当对这些循环小数进行数学运算并将二进制数据转换成人类可读的十进制数据时,会对小数尾部进行截断处理。在不同的语言中,运行0.1+0.2会输出不同的结果。

21.AA。【解析】结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化、限制使用goto语句等。

22.A对象有如下一些基本特点:标识唯一性、分类性、多态性、封装性、模块独立性好。所以选择A。

23.Cwhile条件为真时进入循环体,执行循环体中的内容。如果x的值为偶数则if条件为假,不执行任何操作,为奇数则if条件为真,输出该奇数;进入下一次循环,判断while条件,判断是否进入循环体,执行循环体中的代码。后面的操作类似,直到while条件不满足。经过一系列的运算,输出结果为:97531。

24.A程序中b=4200,a=0.36,b-a=4199.64。本题选择A选项。

25.A

26.Aturtle库是Python的标准库,用于基本图形的绘制;jieba库是Python的第三方中文分词库;SciPy是数据分析方向的第三方库;Flask是Web开发方向的第三方库。本题选择A选项。

27.C在Python中,二维列表对象输出为CSV格式文件采用遍历循环和字符串的join()方法相结合的方法,如下。#ls代表二维列表,此处省略f=open(“cpi.csv”,“w”)forrowinls\tf.write(“,”.join(row)+“\\n”)f.close()本题选择C选项。

28.AB选项是一个微型的面向文档的数据库,C选项是Python的数字信号处理包,D选项是Python的网络信息挖掘模块。本题选择A选项。

29.B

30.D字典的“键”必须为不可变类型;字典的值可以是任意类型。本题选择D选项。

31.Y

32.Y

33.Y

34.N

35.Y

36.Y

37.N

38.N

39.Y

40.Y

41.[3]

42.compile()

43.4

44.[0,2,4]

45.'123456'

46.'3'

47.else、if

48.2

49.pip

50.'ab'

51.s=input()\r\nprint(”{:=>25}”.format(eval(s)))该题目主要考查Python字符串的格式化方法。Python语言推荐使用.format()格式化方法,其使用方式如下:\r\n

<模板字符串>.format(<逗号分隔的参数>)\r\n

其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用大括号({})表示,对应format()方法中逗号分隔的参数。如果模板字符串中有多个槽,可以通过format()参数的序号在模板字符串槽中指定参数的使用,参数从0开始编号。例如:\r\n”{0}日:学而不思则罔,思而不学{1}。”.format(”孔子”,”则殆”)\r\n

其结果为:’孔子日:学而不思则罔,思而不学则殆。’\r\n

format()方法的槽除了包括参数序号,还可以包括格式控制信息,语法格式如下:\r\n

{<参数序号>:<格式控制标记>}\r\n其中,格式控制标记包括:<填充><对齐><宽度><,><.精度><类型>6个字段,由引导符号(:)作为引导标记,这些字段都是可选的,可以组合使用。\r\n

<填充>:指用于填充的单个字符。\r\n

<对齐>:分别使用<、>和^三个符号表示左对齐、右对齐和居中对齐。\r\n<宽度>:当前

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论