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

下载本文档

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

文档简介

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

一、单选题(30题)1.在Python中,用于数据分析的第三方库是()。

A.pandasB.PILC.DjangoD.Flask

2.以下构成Python循环结构的方法中,正确的是()。

A.whileB.loopC.ifD.do…for

3.下面代码的输出结果是()。words=“helloPythonworld!Mf=lambdax:len(x)foriinwords,split():print(f(i),end=””)A.555B.566C.666D.ll1111

4.执行以下代码的结果是()A.2B.22C.23D.24

5.下面哪个语句能够让列表中的名字按行输出?names=[‘Dick’,‘Nancy’,‘Roger’]A.print("\n".join(names))

B.print(names.join("\n"))

C.print(names.append("\n"))

D.print(names.join("%s\n",names))

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

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

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

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

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

7.以下不属于Python控制结构的是()。

A.顺序结构B.循环结构C.分支结构D.数据结构

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

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

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

10.以下关于Python字符编码的描述中,正确的是()。

A.Python字符编码使用ASCII编码存储

B.chr(x)和ord(x)函数用于在单字符和Unicode编码值之间进行转换

C.print(chr(’a’))输出97

D.ptint(ord(65))输出A

11.执行eval('l1=[5,7,9]')后()

A.[5,7,9]B.l1=[5,7,9]C.异常D.没有任何返回

12.以下关于二进制整数的定义,正确的是()。

A.081014B.0b1010C.0B1019D.ObC3F

13.对于循环队列,下列叙述中正确的是()。

A.队头指针是固定不变的

B.队头指针一定大于队尾指针

C.队头指针一定小于队尾指针

D.队头指针可以大于队尾指针,也可以小于队尾指针

14.下列关于Python程序格式的描述中,错误的是()。

A.缩进表达了所属关系和代码块的所属范围

B.注释可以在一行中的任意位置开始,这一行都会作为注释不被执行

C.进行赋值操作时,在运算符两边各加上一个空格可以使代码更加清晰明了

D.文档注释的开始和结尾使用三重单引号“1"”或三重双引号“””"”

15.Python中,查看一个对象是哪种类型,使用______命令

A.isinstanceB.idC.typeD.issubclass

16.下面代码的输出结果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(C))

A.3B.5C.2D.0

17.下面代码的输出结果是()。foriinrange(0,10,2):print(i,end="")

A.02468B.2468C.0246810D.246810

18.下面关于Python标准库和第三方库的说法正确的是()。

A.Python的第三方库是随着Python安装时默认自带的库

B.Python的标准库和第三方库的调用方式都一样,都需要用import语句调用

C.Python的第三方库需要用import语句调用,而标准库不需要

D.Python的标准库需要用import语句调用,而第三方库不需要

19.列表listV=list(range(10)),以下能够输出列表listV中最小元素的是()。

A.print(min(listV))

B.print(listV.max())

C.print(min(listV()))

D.print(listV.reverse(i)[0])

20.以下关于程序的异常处理的描述中,错误的是()。

A.在try-except-else结构中,如果try块的语句引发了异常则会执行else块中的代码

B.异常处理结构中的finally块中的代码仍然有可能出错从而再次引发异常

C.一般不建议在try中放太多代码,而是应该只放入可能会引发异常的代码

D.在异常处理结构中,不论是否发生异常,finally子句中的代码总是会执行的

21.下面关于Python中函数的说法错误的是()。

A.函数的一个优点是方便修改,更易扩展

B.函数名是可以使用保留字的

C.函数名必须以下划线、中文或字母开头

D.函数名区分大小写

22.下列数据结构中,能够按照“先进后出”原则存取数据的是()。

A.循环队列B.栈C.队列D.二叉树

23.以下程序的输出结果是()。print(0.1+0.2==0.3)

A.-1B.TrueC.FalseD.0

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

A.printf(‘HelloWorld’)

B.print(HelloWorld)

C.print(“HelloWorld”)

D.printf(“HelloWorld”)

25.第三方库BeautifulSoup4的功能是()。

A.解析和处理HTML和XMLB.支持Web应用程序框架C.支持WebServices框架D.处理HTTP请求

26.下面关于Python中实参和形参的说法错误的是()。

A.在函数定义时的参数被称为形参,形参不是实际存在的变量

B.可选参数一般都放置在非可选参数的后面

C.实参必须是一个常量

D.形参存在的目的是接收调用函数时传入的实参

27.在Python中,读入CSV文件保存的二维数据,按特定分隔符抽取信息,最可能用到的函数是()。

A.read()B.join()C.replace()D.split()

28.在Python中,关于数据类型的描述错误的是()。

A.整数的书写格式支持十进制、二进制、八进制和十六进制

B.如果想知道参数的数据类型,那么可以使用type()函数获得

C.整数、浮点数、复数和布尔值都是Python的基本数据类型

D.浮点数是带有小数的数字,它存在范围的限制,如果计算结果超出上限和下限,则不会报错,但会有warning的警告

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

A.if语句中语句块执行与否依赖于条件判断

B.if语句中条件部分可以使用任何能够产生True和False的语句和函数

C.二分支结构有一种紧凑形式,使用保留字if和elif实现

D.多分支结构用于设置多个判断条件以及对应的多条执行路径

30.以下关于匿名函数的描述,错误的是()。

A.在Python中,lambda表达式属于可调用对象

B.lambda表达式中可以使用任意复杂的表达式,但是必须只编写一个表达式

C.g=lambdax:3是一个合法的赋值语句

D.无法使用lambda表达式定义有名字的函数

二、判断题(10题)31.Python列表、元组、字符串都属于有序序列。

A.是B.否

32.在try...except...else结构中,如果try块的语句引发了异常则会执行else块中的代码。

A.是B.否

33.Python3.x支持使用中文作为变量名。

A.是B.否

34.二进制文件也可以使用记事本或其他文本编辑器打开,但是一般来说无法正常查看其中的内容。

A.是B.否

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

A.是B.否

36.只能对列表进行切片操作,不能对元组和字符串进行切片操作。

A.是B.否

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

A.是B.否

38.3+4j是合法Python数字类型。

A.是B.否

39.对于大量列表的连接,extend()方法比运算符+具有更高的效率。

A.是B.否

40.字符串属于Python有序序列,和列表、元组一样都支持双向索引。

A.是B.否

三、填空题(10题)41.已知字典x={i:str(i+3)foriinrange(3)},那么表达式sum(item[0]foriteminx.items())的值为___________。

42.Python内置函数________________用来返回数值型序列中所有元素之和。

43.表达式3<5>2的值为_______________。

44.表达式int('101',2)的值为__________。

45.表达式'Helloworld!'[-4]的值为________________。

46.列表、元组、字符串是Python的_________(有序?无序)序列。

47.已知x为非空列表,那么表达式x.sort()==sorted(x)的值为__________。

48.表达式3&6的值为_________。

49.假设列表对象aList的值为[3,4,5,6,7,9,11,13,15,17],那么切片aList[3:7]得到的值是______________________。

50.表达式sorted(['abc','acd','ade'],key=lambdax:(x[0],x[2]))的值为_____________。

四、操作题(3题)51.考生文件夹下存在一个文件“PY102.py”,请写代码替换横线,不修改其他代码,实现以下功能。a和b是两个列表变量,列表a为[11,3,8]已给定,输入列表b,计算a中元素与b中对应元素乘积的累加和。例如:输入的列表b为[4,5,2],累加和为11*4+5*3+8*2=75,因此,屏幕输出的计算结果为75。试题程序:#请在程序的_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码a=[11,3,8]b=eval(input())#例如..[4,5,2]—(1)—foriin(2):s+=a[i]*b[i]print(s)

52.考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:使用循环输出从1到50之间的奇数。

试题程序:

#请在_____处使用一行代码或表达式替换

#注意:请不要修改其他已给出代码______whilecount<50:

ifcount%2==0:

print(count,end=”,”)

53.某班学生评选一等奖学金,学生的10门主干课成绩存在考生文件夹下文件score.txt中,每行为一个学生的信息,分别记录了学生学号、姓名以及10门课成绩,格式如下:

1820161043

郑珉镐68668377567361696678

1820161044

沈红伟91708l919680789l8994

从这些学生中选出奖学金候选人,条件是:①总成绩排名在前10名;②全部课程及格(成绩大于等于60)。

问题1:给出按总成绩从高到低排序的前10名学生名单,并写入文件candidate0.txt,每行记录一个学生的信息,分别为学生学号、姓名以及10门课成绩。补充考生文件夹下文件PY301一1.py,完成这一功能。试题程序:

#请在…处使用多行代码替换

##注意:其他已给出代码仅作为提示,可以修改L=[]

#L中的元素是学生原始成绩和总成绩

…#此处可多行

L.sort(key=lambdax:x[一1],reverse=True)拌按学生总成绩从大到小排序

…#此处可多行

问题2:读取文件candidate0.txt,从中选出候选人,并将学号和姓名写入文件candidate.txt,格式如下:

1010112161722

张三

1010112161728

李四

补充考生文件夹下文件PY301—2.py,完成这一功能。

试题程序:'''输入文件:candidate0.txt输出文件:candidate.txt'''

参考答案

1.A用于数据分析的第三方库是pandas,PIL是Python在图像处理方面的第三方库,Django和flask库是Python在Web开发方向的第三方库。本题选择A选项。

2.APython中的循环结构有for语句和while语句。if是选择结构语句。本题选择A选项。

3.B该代码是一个匿名函数和split()方法的结合使用,split()方法把字符串words以空格分隔,返回的是列表类型。通过for循环把列表元素赋值给变量i,然后调用函数f()计算每个单词的长度,所以输出的是566。本题选择B选项。

4.D

5.A

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

7.DPython控制结构包括顺序结构、循环结构及分支结构。本题选择D选项。

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

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

10.B在Python中,字符编码以Unicode编码存储。chr(x)和ord(x)函数用于在单字符和Unicode编码值之间进行转换。chr(x)函数返回Unicode编码对应的字符,ord(x)函数返回单字符x对应的Unicode编码,如chr(1010)返回’c’,ord(”和”)返回21644。因此,C,D两项错误。

11.C

12.B二进制整数以0b开头,后面跟二进制数0和1。A、C、D三项中有4、9、C、3、F,这些都不是二进制数。

13.D循环队列的队头指针与队尾指针都不是固定的,随着入队与出队操作进行变化。因为是循环利用的队列结构,所以队头指针有时可能大于队尾指针有时也可能小于队尾指针。本题选择D选项。

14.B注释可以在一行中的任意位置开始,但只有在“#”后的才会被作为注释不被执行。本题选择B选项。

15.C

16.Adivmod(a,b)函数返回的是两个数值的商和余数,那么a和b的值就分别是(2,1)和(0,2),而C是把a、b相加后转为集合型,那么a\n+b为(2,1,0,2),转成集合后即为{0,1,2},最后是取总和的sum()函数,所以相加起来是的总和为3。本题选择A选项。

17.Arange(start,\nend,step)产生的是以[start,end)为区间并且步长为step的一个序列。通过for循环遍历输出,元素之间以空格符分隔。本题选择A选项。

18.BA选项错误,Python的标准库是Python安装时默认自带的库,而第三方库需要下载后安装到Python的安装目录下,不同的第三方库安装及使用方法不同;C、D两项错误,无论是标准库还是第三方库都需要用import语句调用,所以B正确。

19.A列表操作函数有(假设列表名为ls):\nlen(ls):返回列表ls的元素个数(长度)。\nmin(ls):返回列表ls的最小元素。\nmax(ls):返回列表ls的最大元素。\nlist(x):将x转变为列表类型。\n使用min(ls)和max(ls)的前提是列表中各元素类型可以进行比较。如果列表元素不能比较,使用这两个函数将会报错。本题选A选项。

20.A只有try语句块中的语句正常执行,不发生中断或异常,else子句中的代码才会执行。本题选择A选项。

21.B函数名不可以使用Python中的保留字,所以选B项。

22.B栈是按先进后出的原则组织数据的。队列是按先进先出的原则组织数据。本题选择B选项。

23.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会输出不同的结果。本题选择C选项。

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

25.ABeautifulSoup4用于解析和处理HTML和XML。它的最大优点是能根据HTML和XML语法建立解析树,进而高效解析其中的内容。本题选择A选项。

26.CPython中函数定义时的参数称为形参,调用时的参数称为实参。实参可以是常量、变量、表达式、函数等。调用函数时,形参用来接收实参的值。本题选择C选项。

27.D在Python中,读取CSV文件中的二维码数据采用遍历循环和字符串的split()方法相结合,方法如下:f=open('cpi.csv”,”r”)ls=[]forlineinf:Is.append(line,strip(“\\n').split(“,”))f.close()本题选择D选项。

28.D浮点数的取值范围为-10308~10308,浮点数之间的区分精度约为2.22×10-16。对除高精度科学计算外的绝大部分运算来说,浮点数类型的数值范围和小数精度足够“可靠”,一般认为浮点数类型没有范围限制。如果计算结果超出上限和下限会产生溢出错误。本题选择D选项。

29.CPython的单分支结构使用if保留字对条件进行判断,使用方式为:\nif<条件>:\n<语句块>\nPython的二分支结构使用if—else保留字对条件进行判断,语法格式为:\nif<条件>:\n<语句块1>\nelse:\n<语句块2>\nPython的多分支结构使用if—elif—else保留字对多个相关条件进行判断,并根据不同条件的结果按照顺\n序选择执行路径,语法格式为:\nif<条件l>:\n<语句块1>\nelif<条件2>:\n<语句块2>\nelse:\n<语句块3>

30.Dlambda表达式中可以调用其他函数,该表达式的计算结果相当于函数的返回值。

31.Y

32.N

33.Y

34.Y

35.N

36.N

37.N

38.Y

39.Y

40.Y

41.3

42.sum()

43.True

44.5

45.'r'

46.有序

47.False

48.2

49.[6,7,9,11]

50.['abc','acd','ade']

51.a=[11,3,8]b=eval(input())S=0foriinrange(3):s+=a[i]*b[i]print(s)本题用变量S收集两个列表中对应元素乘积的和,因此要先定义变量S,第1空应填入s=0。两个列表中对应元素乘积可表示为a[i]*b[i],再求和S\r\n+=a[i]*b[i];由于列表中只有3个元素,索引从0开始,所以for循环遍历中i的取值依次为0、1、2,因此第2空应填入range(3)。

52.count=0\r\n

whilecount<50:\r\n

count+=1\r\n

ifcount%2==0:\r\n

continue\r\n

print(count,end=”,”)判断一个数是否为奇数,即判断这个数能否被2整除,可以被整除则为偶数,结束本次循环,使用continue语句;不可以被整除则为奇数,输出该数。while循环不具有自动计数的功能,所以需要定义一个变量,初始值为0,每经过一次循环,变量加1;当变量超过50时,停止循环。

53.(1)L=[]\r\n

fo=open("score.txt","r")\r\n

fi=open("candidate0.txt","w")\r\n

lines=fo.readlines()\r\n

forlineinlines:\r\n

line=line.strip()\r\n

student=line.split('')\r\n

sum=0\r\n

foriinrange(1,11):\r\n

sum+=int(student[-i])\r\n

studene.append(str(sum))\r\n

L.append(student):\r\n

L.sort(key=lambda.x:x[一1],reverse=True)\r\nforiinrange(10):\r\nfi.write('',join(L[i][:-1])+'\\n')\r\nfo.close()\r\nfi.close()(2)'''\r\n输入文件:candidate0.txt\r\n输出文件:candidate.txt\r\n'''\r\nfo=open("candidate0.txt","r")\r\nfi=open("candlidate.txt","w")\r\nL=[]#存储候选人\r\nlines=fo.readlines()\r\nforlineinlines:\r\n

line=line.strip()\r\n

student=line.split('')\r\n

foriinstudent[-10:]:\r\n

ifint(i)<60:\r\n

break\r\n

else:\r\n

I:append(student[:2])\r\nforiinL:\r\n

fi.write(''.join(i)+'\\n')\r\nfo.close()\r\nfi.close()(1)本题涉及”score.txt”和”candidate0.txt”两个文件。首先要读取”score.txt”文件中的信息,通过程序求出每个学生的总成绩,然后按总成绩从大到小排序,将总成绩排名前10的学生的学号、姓名以及10门课成绩写入到”candidate0.txt”文件中。打开文件用open()函数,用”r”只读模式打开文件”score.txt”,用”w”模式创建文件”cand:idate0.txt”。\r

温馨提示

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

评论

0/150

提交评论