广东省东莞市全国计算机等级考试Python语言程序设计专项练习(含答案)_第1页
广东省东莞市全国计算机等级考试Python语言程序设计专项练习(含答案)_第2页
广东省东莞市全国计算机等级考试Python语言程序设计专项练习(含答案)_第3页
广东省东莞市全国计算机等级考试Python语言程序设计专项练习(含答案)_第4页
广东省东莞市全国计算机等级考试Python语言程序设计专项练习(含答案)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

广东省东莞市全国计算机等级考试Python语言程序设计专项练习(含答案)学校:________班级:________姓名:________考号:________

一、单选题(30题)1.以下关于Python全局变量和局部变量的描述中,错误的是()。

A.局部变量在使用过后立即被释放

B.全局变量一般没有缩进

C.全局变量和局部变量的命名不能相同

D.一个程序中的变量包含两类:全局变量和局部变量

2.下面代码的输出结果是()。defadd(x):ifx>0:returnx+add(x一1)else:return0result=add(10)print(result)

A.0B.10C.55D.45

3.在Python语言中,使用for..in..方式形成的循环不能遍历的类型是()。

A.列表B.复数C.字符串D.字典

4.数据库管理系统能实现对数据库中数据的查询、插入、修改及删除,这类功能称为()。

A.数据控制功能B.数据定义功能C.数据存储功能D.数据操纵功能

5.执行以下代码的结果是?type(lambda:None)A.(type‘NoneType’)

B.(type‘function’)

C.(type‘tuple’)

D.(type‘type’)

6.结构化程序设计的基本原则不包括A.多态性B.自顶向下C.模块化D.逐步求精

7.''[0:4]该表达使用了Python的特性()

A.IndexingB.SlicingC.PathD.Multi-Indexing

8.软件设计中划分模块的一个准则是()。

A.低内聚、低耦合B.高内聚、低耦合C.低内聚、高耦合D.高内聚、高耦合

9.以下程序的输出结果是()。ls=[’绿茶’,’乌龙茶’,’红茶’,’白茶’,’黑茶’]x=’乌龙茶’print(ls.index(x,0))

A.一3B.0C.1D.一4

10.以下关于Python分支结构的描述中,错误的是()。

A.Python分支结构使用保留字if、elif和else来实现,每个if后面必须有elif或else

B.if-else结构是可以嵌套的

C.if语句会判断if后面的逻辑表达式,当表达式为真时,执行if后续的语句块

D.缩进是Python分支语句的语法部分,缩进不正确会影响分支功能

11.用Pyinstaller工具打包Python源文件时一F参数的含义是()。

A.指定所需要的第三方库路径

B.在dist文件夹中只生成独立的打包文件

C.指定生成打包文件的目录

D.删除生成的临时文件

12.对于以下代码的描述正确的是()。s=”Pythonisgood”l=”isn’tit?”length=len(s)s_title=s.title()s_l=s+1s_number=s[1:6]print(length)

A.length为12。

B.s_title为”PYTHONISGOOD”

C.s_1为”Pythonisgoodisn’tit?”

D.s_number为”Python”

13.在数据库设计中,将E-R图转换成关系数据模型的过程属于()。

A.需求分析阶段B.概念设计阶段C.逻辑设计阶段D.物理设计阶段

14.以下描述中,错误的是()。

A.Python语言通过索引来访问列表中元素,索引可以是负整数

B.列表用方括号来定义,继承了序列类型的所有属性和方法

C.Python列表是各种类型数据的集合,列表中的元素不能够被修改

D.Python语言的列表类型能够包含其他的组合数据类型

15.下载但不安装一个第三方库的命名格式是()。

A.pipdownload<第三方库名>

B.pipuninstall<第三方库名>

C.pipinstall<第三方库名>

D.pipsearch<第三方库名>

16.拟在屏幕上输出HelloWorld,使用的Python语句是()。

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld")

D.printf("HelloWorld")

17.下面关于Python中类的继承,说法错误的是()。

A.创建子类时,父类必须包含在当前文件夹且位于子类的前面

B.定义子类时,必须在括号内指明子类所要继承的父类的名称

C.如果调用的是继承的父类中的公有方法,可以在这个公有方法中访问父类中的私有属性和私有方法

D.如果在子类中实现了一个公有方法,该方法也能调用继承的父类中的私有方法和私有属性

18.以下关于数据维度的描述,错误的是()。

A.列表的索引值是大于0小于列表长度的整数

B.JSON格式可以表示比二维数据还复杂的高维数据

C.二维数据可以看成是多条一维数据的组合形式

D.csv文件既能保存一维数据,也能保存二维数据

19.表达式divmod(40,3)的结果是()。

A.13,1B.(13,1)C.13D.1

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

A.6B.6inTest_listC.TrueD.False

21.以下属于Python机器学习领域第三方库的是()。

A.turtleB.numpyC.pygameD.mxnet

22.实体电影和实体演员之间的联系是()。

A.一对一B.多对多C.多对一D.一对多

23.以下程序的输出结果是()。a=10b=1try:c=b//(b/a)print(c)except(IOError,ZeroDivisionError):print(“calculationerror”)else:print(“noerror”)A.calculationerrorB.noerrorC.10.0D.9.0

24.以下不是Python特点的是()。

A.执行速度快B.语法简洁C.支持中文D.生态丰富

25.以下python数据类型中不支持索引访问的是()

A.字符串B.列表C.元组D.集合

26.以下程序的输出结果是()。list=[[0,1,2],“123.0”,“python”]a=all(list[0])b=list[1].split(“.”)c=ascii(list[2])print(a,b,c)

A.True[‘123’]‘python’

B.False['0']‘1’

C.True[‘123’,‘0’]‘1’

D.False[‘123’,‘0’]‘python’

27.以下关于组合类型的描述,正确的是()。

A.空字典可以用大括号来创建

B.可以用set创建集合,用中括号和赋值语句增加新元素

C.字典数据类型里可以用列表做键

D.字典的items()函数返回一个键值对,并用元组表述

28.以下程序的输出结果不可能是()。importrandomls=[2,3,4,6]s=10k=random.randint(0,2)s+=ls[k]print(s)

A.12B.14C.13D.16

29.以下程序的输出结果是()。foriin“miss”: forjinrange(3): print(i,end=‘’) ifi==“i”: break

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

30.下列关于Python的描述正确的是()。

A.代码的缩进错误导致的是逻辑错误

B.跳跃结构是Python的流程结构之一

C.Python支持的数据类型包括char、int和float等

D.Python内存管理中,变量无须事先创建和赋值,而是可以直接使用

二、判断题(10题)31.正则表达式元字符“\s”用来匹配任意空白字符。

A.是B.否

32.假设re模块已成功导入,并且有pattern=pile('^'+'\.'.join([r'\d{1,3}'foriinrange(4)])+'$'),那么表达式pattern.match('03')的值为None。

A.是B.否

33.已知A和B是两个集合,并且表达式AB的值一定为True。A.是B.否

34.Python支持使用字典的“键”作为下标来访问字典中的值。

A.是B.否

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

A.是B.否

36.Python3.x完全兼容Python2.x。

A.是B.否

37.集合可以作为列表的元素。

A.是B.否

38.假设已导入random标准库,那么表达式max([random.randint(1,10)foriinrange(10)])的值一定是10。

A.是B.否

39.集合可以作为元组的元素。

A.是B.否

40.在循环中continue语句的作用是跳出当前循环。

A.是B.否

三、填空题(10题)41.表达式int('11111',2)的值为__________。

42.表达式type('3')in(int,float,complex)的值为__________。

43.表达式-13//4的值为__________。

44.代码print(1,2,3,sep=':')的执行结果为__________________。

45.表达式list(filter(lambdax:len(x)>3,['a','b','abcd']))的值为___________。

46.已知x={'a':'b','c':'d'},那么表达式'b'inx.values()的值为______________。

47.任意长度的Python列表、元组和字符串中最后一个元素的下标为________。

48.表达式sum(range(1,10))的值为_____________。

49.正则表达式元字符________用来表示该符号前面的字符或子模式1次或多次出现。

50.表达式'abc.txt'.endswith(('.txt','.doc','.jpg'))的值为___________。

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

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

52.考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。马和骆驼都是哺乳动物,它们都有4只脚,体型也差不多大,我们将在这里为它们编写属于它们各自的类。问题1:在“PY301-l.py”文件中修改代码,代码中编写了一个马(Horse)的类,在这个类中马有3个属性,分别是年龄(age)、品种(category)及性别(gender)。在每创建一个马的对象时,我们需要为其指定它的年龄、品种及性别。该类中还编写一个get_descriptive()方法,能够输出马的这3个属性。每一匹马都有自己的最快速度,所以类中有一个speed()方法,可以输出马的最快速度值。并且在马的生命过程中,它的速度一直在变,类中还有一个update_Speed()方法用来更新马当前的最快速度值。例如:一匹12岁的阿拉伯公马,在草原上奔跑的速度为50千米每小时,要求调用get_descriptive()和up-date_speed()方法,将输出的结果保存在考生文件夹下,文件命名为“PY301-1.txt”。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#请在_____处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准fo=open("PY301-1.txt”,"w")_____Horse():def_____(self,category,gender,age):…defget_descriptive(self〉:info='thishorseis‘+_____+‘yearsold,‘+'itscategoryis‘+_____+‘,’+‘itsfenderis'++’,’fo.write(info+"\n")defupdate_speed(self,new一speed):fo.write(‘thespeedofthishorseis‘+str(self.horse一speed)+"km/h.")…fo.close()问题2:在“PY301-2.py”文件中修改代码,该代码编写了一个骆驼类(Camel),这个类继承自上一个文件中的马类但是不对马类中的属性和方法进行操作。因为每个骆驼的驼峰数量不一致,我们在类中添加驼峰数目这个新属性,并且添加一个输出骆驼驼峰数目的方法。例如:一个20岁的双峰母骆驼以每小时40千米的速度奔跑在沙漠中,调用父类的方法和Camel类本身的方法将结果保存在“PY301-2.txt”中,保存在考生文件夹下。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#请在_____处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准fo=open("PY301-2.txt","w")_____Horse():def_____(self,category,gender,age):defget_descriptive(self):info='thishorseis‘+_____+‘yearsold,’+'itscategoryis‘+_____+‘,’+‘itsfenderis‘+_____+’,’fo.write(info+"\n")defupdate_speed(self,new_speed):fo.write(’thespeedofthishorseis‘+str(self.horse_speed)+"km/h.\n")classCamel(Horse):Def_init_(self,category,gender,age):_____.___init___(category,gender,age〉self.hump_size=2defdescribe_hump_size(self):fo.write(’thiscamelhas‘+str(self.hump_size)+‘hump.’)…fo.close()

53.考生文件夹下存在一个文件“PY202.py”,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能。使用Python的异常处理结构编写对数计算,要求底数大于0且不等于1,真数大于0,且输入的必须为实数,否则拋出对应的异常。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#请在_____处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准try:a=eval(input(‘请输入底数:’))b=eval(input(‘请输入真数:’))c=_____exceptValueError:…exceptZeroDivisionError:print(‘底数不能为1’)exceptNameError:Prints(‘输入必须为实数’)else:print(C)

参考答案

1.C根据程序中变量所在的位置和作用范围,变量分为局部变量和全局变量。局部变量指在函数内部定义的变量,仅在函数内部有效,且作用域也在函数内部,当函数退出时变量将不再存在。全局变量一般指在函数之外定义的变量,在程序执行全过程有效,一般没有缩进,全局变量和局部变量的命名可以相同,C项错误。

2.C该函数是一个递归函数,用来计算1到10之间的所有数的和,使用函数时必须调用函数,即函数名(<参数>),也可以将函数对象实例化。结果为55,选C项。

3.B在Python语言中,使用for..in..方式形成的循环能遍历的类型有字符串、文件、range()函数或组合数据类型,不能遍历复数。

4.D数据定义功能:负责数据的模式定义与数据的物理存取构建。数据操纵功能:负责数据的操纵,包括查询与增、删、改等操作。数据控制功能:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。本题选择D选项。

5.B

6.A结构化程序设计方法的主要原则可以概括为:自顶向下,逐步求精,模块化和限制使用GOTO语句,其中不包括多态性。

7.B

8.B一般较优秀的软件设计,应尽量做到高内聚、低耦合,即降低模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。本题选择B选项。

9.C列表的index()方法用于从列表中找出某个对象第一个匹配项的索引位置,如果这个对象不在列表中会报一个异常。其语法为:list.index(obj[,start=0[,stop=len(L)]]),其中obj为必须参数,指要查找的对象;start为可选参数,指从哪个索引位置开始查找,默认为0;stop为可选参数,指查找到哪个索引位置结束,默认为列表的长度。本题中,查找对象为’乌龙茶’,从索引位置为0处开始查找,查找到第二个元素匹配,故返回其索引位置1。

10.APython分支结构使用保留字if、elif和else来实现,每个if后面不一定要有elif或else,A选项错误;if-else结构是可以嵌套的,B选项正确;if语句会判断if后面的逻辑表达式,当表达式为真时,执行if后续的语句块,C选项正确;缩进是Python分支语句的语法部分,缩进不正确会影响分支功能,D选项正确。本题选择A选项。

11.B一F是指在dist文件夹中只生成独立的打包文件(即exe文件),所有的第三方依赖、资源和代码均打包进此exe中。

12.Clen()方法用来获取字符串的长度,所以length应为14;title()方法是把字符串每个单词的首字母变为大写,所以应为PythonIsGood;索引的序号是从0开始的,所以s[1:6]应为ython。

13.CE-R图转换成关系模型数据则是把图形分析出来的联系反映到数据库中,即设计出表,所以属于逻辑设计阶段。

14.C列表用中括号([])表示,由于列表属于序列类型,故继承了序列类型的所有属性和方法,B项正确。索引是列表的基本操作,用于获得列表中的一个元素,该操作沿用序列类型的索引方式,即正向递增序号或反向递减序号,使用中括号作为索引操作符,索引号不得超过列表的元素范围,否则将产生IndexError错误。A项正确。列表可以进行元素增加、删除、替换、查找等操作,列表没有长度限制,元素类型可以不同,能够包含其他的组合数据类型,故D项正确、C项错误。

15.Apipdownload<第三方库名>用于下载第三方库的安装包,但并不安装;pipuninstall<第三方库名>用于卸载一个已经安装的第三方库;pipinstall<第三方库名>用于安装第三方库;pipsearch<第三方库名>用于联网搜索库名或摘要中的关键字。本题选择A选项。

16.C在Python中,输出用print()函数,HelloWorld是字符串类型,需要加单引号或双引号。本题选择C选项。

17.D在Python类的继承中,如果调用的是继承父类的公有方法,可以在公有方法中访问父类中的私有属性和私有方法;但是如果子类中实现了一个公有方法,那么这个方法是不能够调用继承父类中的私有方法和私有属性的,所以D选项错误。

18.A列表的索引值也可以是负整数,如l[一1]就代表列表1的最后一个元素。

19.Bdivmod(x,y)函数用来计算x和y的除余结果,返回两个值,分别是:x与y的整数除,即x//y,以及x与y的余数,即x%y。返回的两个值组成了一个元组类型,即小括号包含的两个元素(x//y,x%y)。40//3=13,40%3=1,故答案为B项。

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

21.D在Python语言中,turtle库是Python重要的标准库之一,用于基本的图形绘制;numpy库属于数据分析领域;pygame库属于游戏开发领域,都不属于机器学习领域的第三方库。

22.B一部电影可由多名演员参演,一名演员可以参演多部电影,因此实体电影和实体演员之间的联系是多对多。本题选B选项。

23.D只有当程序未引发异常顺利执行完try中的代码后,else语句块内的代码才会执行。本题中,try中无异常,输出变量c的值,再执行else中的代码。本题选择D选项。

24.APython最重要的3个特点是语法简洁、生态丰富、多语言集成。除了这3个重要特点外,还有一些其他特点:平台无关、强制可读、支持中文、模式多样、类库便捷。Python是一种高级通用脚本语言,是通过解释方式执行的(解释是将源代码逐条转换成目标代码同时逐条运行目标代码的过程),故执行速度没有采用编译方式的语言执行得快。本题选择A选项。

25.D

26.Dall(x)函数,当组合类型变量x中所有元素为真时返回True,否则返回False。元素除了0、None、False外都算True。所以a的值为False;b中split()是字符串分隔方法,返回分隔后的值应为[‘123’,‘0’];c中ascii()的参数是字符串‘python’,所以返回‘python’。本题选择D选项。

27.A集合中可以使用add()方法增加新元素,不能使用中括号来添加,B项错误;字典数据类型必须用不可变的元素做键,而列表是可变的,不能做键,C项错误;字典的items()函数返回的是所有的键值对,D项错误。故正确答案为A项。

28.Drandint(a,b)产生一个[a,b]的整数,因此random.randint(0,2)的返回值可能为0、1或者2(即k的值),ls[0]=2,ls[1]=3,ls[2]=4,所以s也有3个可能的值s+=2,s+=3,s+=4,也就是12、13、14。本题选择D选项。

29.B外层for循环依次将字符串“mlss”中的字符赋给变量i,内层for控制循环3次,注意是先执行print再判断if条件,输出第一个i后,碰到if判断条件,当i==“i”时退出内层循环,所以结果为mmmlssssss。本题选择B选项。

30.APython包括三种控制结构:顺序结构、分支结构和循环结构;Python支持的数据类型有数字类型和字符串类型;Python变量使用前需要定义。

31.Y

32.N

33.N

34.Y

35.N

36.N

37.Y

38.N

39.Y

40.N

41.31

42.FalseTrue

43.-4

44.1:2:3

45.['abcd']

46.True

47.-1

48.45

49.+

50.True

51.importturtleforiinrange(3):turtle.seth(i*120)turtle.fd(100)该题是用Python标准库——turtle库绘制简单的等边三角形。因为绘制3条边,所以循环执行3次,因此第1空填3。由于题目要求使用seth()函数,因此需要在绘制每条边时计算绝对绘制方向,可以利用循环变量i计算3个边的绝对角度,因此第2空填i\r\n*120。最后利用海龟移动绘制3条边,因此第3空填turtle,fd。

52.(1)fo=open(”PY301一1.txt”,”w”)classHorse():Def__init__(self,category,gender,age):self.category=categoryself.gender=genderself.age=ageself.horse_speed=0defget_descriptive(self):info=’thishorseis’+str(self.age)+’yearsold,’+’itscategory\r\nis’+self.category+’,’+'itsfenderis'+self.gender+’.’fo.write(info+”\\n”)defupdate_speed(self,new_speed):self.horse_speed=new_speedfo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)\r\nhorse=Horse("Arab","male","12")horse.get_deseriptive()horse.update_speed(50)fo.close()(2)fo=open(”PY301-2.txt”,”w”)classHorse():def__init__(self,category,gender,age):self.category=categoryself.gender=genderself.age=ageself.horse_speed=0defget_descriptive(self):info=’thishorseis’+str(self.age)+’yearsold,’+’itscategory\r\nis’+self.category+’,’+'itsfenderis’+self.gender+’.’fo.write(info+”\\n”)defupdate_speed(self,new_speed):self.horse_speed=new_spe

温馨提示

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

评论

0/150

提交评论