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

下载本文档

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

文档简介

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

一、单选题(30题)1.以下程序的输出结果是()。forsin“PythonNCRE”: ifs==“N”: break print(s,end=“”)

A.PythonCREB.NC.PythonD.PythonNCRE

2.执行以下代码的结果是()A.4B.5C.8D.12

3.执行以下代码的结果是?3+5j>=5+3j

A.TrueB.FalseC.0D.异常报错

4.下面属于“对象”成分之一的是()。

A.封装B.规则C.属性D.继承

5.定义学生的关系模式如下:S(S#,Sn,Sex,Age,D#,Da)(其属性分别为学号、姓名、性别、年龄、所属学院、院长)该关系的范式最高是()。

A.1NFB.2NFC.3NFD.BCNF

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

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

7.以下关于Python字符串的描述中,错误的是()。

A.在Python字符串中,可以混合使用正整数和负整数进行索引和切片

B.Python字符串采用[N:M]格式进行切片,获取字符串从索引N到M的子字符串(包含N和M)

C.字符串‘my\\text.dat’中第1个‘\’表示转义字符

D.空字符串可以表示为“”或‘’

8.以下程序的输出结果是()。t="theWorldissobig,Iwanttosee"s=t[20:21]+'love'+t[:9]print(s)A.Ilovethe

B.IloveWorld

C.IlovetheWorld

D.IlovetheWorl

9.执行以下代码的结果是()A.-1B.0C.4D.异常报错

10.一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。

A.12345ABCDEB.EDCBA54321C.ABCDE12345D.54321EDCBA

11.以下保留字不用于循环逻辑的是()。

A.tryB.elseC.forD.continue

12.执行以下代码的结果是()A.12B.24C.36D.48

13.以下程序的输出结果是()。f=lambdax,y:xifx<yelseya=f(“aa”,“bb”)b=f(“bb”,“aa”)print(a,b)

A.aaaaB.aabbC.bbaaD.bbbb

14.以下程序的输出结果是()。foriinrange(3):print(i,end=‘,’)A.0,1,2B.0,1,2,C.1,2,3D.1,2,3,

15.以下关于Python字典的描述中,错误的是()。

A.在Python中,用字典来实现映射,通过整数索引来查找其中的元素

B.在定义字典对象时,键和值用冒号连接

C.字典中的键值对之间没有顺序并且不能重复

D.字典中引用与特定键对应的值,用字典名称和方括号中包含键名的格式

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

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

17.当用户输入2时,下面代码的输出结果是()。try:n=input(“请输入一个整数:”)defpow2(n):returnn**5pow2(n)except:print(”程序执行错误”)

A.32B.2C.程序没有任何输出D.程序执行错误

18.软件设计中划分模块的一个准则是()。A.低内聚低耦合B.高内聚低耦合C.低内聚高耦合D.高内聚高耦合

19.关于字典的描述,错误的是()。

A.字典的元素以键为索引进行访问

B.字典的一个键可以对应多个值

C.字典长度是可变的

D.字典是键值对的结合,键值对之间没有顺序

20.执行以下代码的结果是()A.2B.5C.8D.Anexceptionisthrown

21.采用表结构来表示数据及数据间联系的模型是()。

A.层次模型B.概念模型C.网状模型D.关系模型

22.下列关于Python内置函数的使用描述错误的是()。

A.int(x)是将x转换为一个整数

B.print(“6+5”)的输出是11

C.die.clear()的结果是清空字典dic

D.使用aPPend()函数可以向列表添加元素

23.下列关于栈的叙述正确的是()。

A.栈按“先进先出”的原则组织数据B.栈按“先进后出”的原则组织数据C.只能在栈底插入数据D.不能删除数据

24.下列关于Python程序格式的描述中正确的是()。

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

B.缩进是指每行代码前的留白部分,用来表示层次关系,使代码更加整洁利于阅读,所有代码都需要在行前至少加一个空格

C.Python不允许在一行的末尾加分号,这会导致语法错误

D.一行代码的长度如果过长,可以使用反斜杠续行

25.设元素集合为D={1,2,3,4,5,6}。B=(D,R)为线性结构所对应的R是()。

A.R={(6,1),(5,6),(1,3),(2,4),(3,2)}

B.R={(4,5),(6,1),(5,6),(1,3),(2,4),(3,2)}

C.R={(6,1),(5,6),(1,3),(3,4),(3,2)}

D.R={(6,1),(5,6),(2,3),(2,4),(3,2)}

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.在Python中,不能作为变量名的是()。

A.studentB._bmgC.5spD.Teacher

28.假设现在是2018年10月1日的下午两点20分7秒,则下面代码的输出结果为()。Importtimeprint(time.strftime(“%y-%M-%d@H-%S”time.gmtime()))

A.2018-10-1@14-20-7

B.2018-10-1@14-20-07

C.2018-10-01@14-20-07

D.True@True

29.以下代码的输出结果是()。a=[[1,2,3],[4,5,6],[7,8,9]]s=0forcina:forjinrange(3):s+=c[j]print(s)

A.[1,2,3,4,5,6,7,8,9]B.45C.24D.0

30.单元测试不应涉及的内容是()。

A.模块的接口B.模块的执行路径C.模块的局部数据结构D.模块的出错处理功能

二、判断题(10题)31.在Python中可以为自定义类的对象动态增加新成员。

A.是B.否

32.一个数字5也是合法的Python表达式。

A.是B.否

33.正则表达式元字符“d”用来匹配任意数字字符。

A.是B.否

34.使用Python列表的方法insert()为列表插入元素时会改变列表中插入位置之后元素的索引。

A.是B.否

35.在Python中0xad是合法的十六进制数字表示形式。

A.是B.否

36.Python不允许使用关键字作为变量名,允许使用内置函数名作为变量名,但这会改变函数名的含义。

A.是B.否

37.在Python中,任意长的字符串都遵守驻留机制。

A.是B.否

38.放在一对三引号之间的内容将被认为是注释。

A.是B.否

39.Python字典中的“键”可以是元组。

A.是B.否

40.Python列表中所有元素必须为相同类型的数据。

A.是B.否

三、填空题(10题)41.表达式3<5>2的值为_______________。

42.字典中多个元素之间使用____________分隔开,每个元素的“键”与“值”之间使用________分隔开。

43.已知列表x=[1,3,2],那么执行语句a,b,c=map(str,sorted(x))之后,c的值为______。

44.已知x=[3,7,5],那么执行语句x=x.sort(reverse=True)之后,x的值为_________。

45.______________命令既可以删除列表中的一个元素,也可以删除整个列表。

46.Python运算符中用来计算整商的是_________。

47.表达式'abcab'.replace('a','yy')的值为___________。

48.已知列表x=[1,2],那么执行语句x.extend([3])之后,x的值为____________。

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

50.表达式(1,2,3)+(4,5)的值为__________________。

四、操作题(3题)51.考生文件夹下存在一个文件“PY202.py”,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能。用键盘输入两个大于0的整数,按要求输出这两个整数之间(不包括这两个整数)的所有素数。素数又称质数,是指除了1和它本身以外不能被其他整数整除的数。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#请在_____处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准lower=int(input(‘输入区间最小值:’))upper=int(inputs(‘输入区间最大值:’))fornuminrange(_____,_____):

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

53.考生文件夹下存在3个Python源文件,分别对应3个问题,请按照文件内说明修改代码,实现以下功能。法定节假日是根据各国、各民族的风俗习惯或纪念要求,由国家法律统一规定的用以庆祝及度假的休息时间。法定节假日制度是国家政治、经济、文化制度的重要反映,涉及经济社会的多个方面,涉及广大人民群众的切身利益。法定节假日的安排,为居民出行、购物和休闲提供了时间上的便利,为拉动内需、促进经济增长做出了积极贡献。给出一个某年的节假日的放假日期CSV文件(PY301-vacations.CSV),内容示例如下。序号节假日名称开始月日结束月日1元旦123001012春节021502213清明节040504074劳动节050105035端午节06160618以第1行为例,1230表示12月30日,0101表示1月1日。问题1:在“PY301-1.py”文件中修改代码,读入CSV文件中的数据,获得用户输入。根据用户输入的节假日名称,输出此节假日的时间范围。输入和输出本例格式如下。请输入节假日名称(例如,春节):春节春节的假期位于0215~0221之间试题程序:#以下代码为提示框架#请在程序的...处使用一行或多行代码替换#请在程序的处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准Is=[]print("{}的假期位于{}-{}之间”,.format())问题2:在“PY301-2.py”文件中修改代码,读入CSV文件的数据,获得用户输入。用户输入一组范围是1?7的整数作为序号,序号间采用空格符分隔,以回车符结束。输出这些序号对应的节假日的名称、时间范围,每个节假日的信息一行。本次输出完成后,重新回到输入序号的状态。输入和输出示例格式如下。请输入节假日序号:15元旦(1)假期是12月30日至01月01日之间端午节假期(5)是06月16日至06月18日之间请输入节假日序号:试题程序:#以下代码为提示框架#请在程序的...处使用一行或多行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准...Is=[]print("{}({})假期是{}月{}日至{}月{}日之间".format())问题3:在问题2的基础上,在“PY301-3.Py”文件中修改代码,对输入的每个序号做合法性处理。如果输入的数字不不合法,请输出“输入节假日编号有误!”,继续输出后续信息,然后重新回到输入序号的状态。输入和输出示例格式如下。请输入节假日序号:51411端午节(5)假期是06月16日至06月18日之间输入节假日编号有误!输入节假日编号有误!请输入节假日编号:试题程序:#以下代码为提示框架#请在程序的...处使用一行或多行代码替换#请在程序的处用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准Is=[]print("{}({})假期是{}月{}日至{}月{}日之间".format())ifflag==False:print("输入节假日编号有误!”)...

参考答案

1.Cfor循环将字符串“PythonNCRE”的字符依次赋给变量S,当s==“N”时,跳出for循环,故输出为Python。本题选择C选项。

2.B

3.D

4.C面向对象方法中的对象由两部分组成:①数据,也称为属性,即对象所包含的信息,表示对象的状态;②方法,也称为操作,即对象所能执行的功能、所能具有的行为。本题选择C选项。

5.B关系数据库中的关系是要满足一定要求的,满足不同程度要求的为不同的范式。满足最低要求的叫第一范式,简称1NF。在满足第一范式的基础上,进一步满足更多要求规范则是第二范式。然后在满足第二范式的基础上,还可以再满足第三范式,以此类推。\n对于关系模式,若其中的每个属性都已不能再分为简单项,则它属于第一范式。\n若某个关系R为第一范式,并且R中每一个非主属性完全依赖于R的某个候选键,则称其为第二范式。第二范式消除了非主属性对主键的部分依赖。\n如果关系R是第二范式,并且每个非主属性都不传递依赖于R的候选键,则称R为第三范式。(传递依赖:在关系模式中,如果Y→X,X→A,且X不决定Y和A不属于X,那么Y→A是传递依赖。)\n本题中,关系S满足第一范式和第二范式,但是S#→D#,D#→Da,存在传递依赖,因此不满足第三范式。该关系的范式最高是2NF。本题选B选项。

6.D在Python语言中,读取CSV格式文件中的二维码数据采用遍历循环和字符串的split()方法相结合,方法如下:\nf=open(”cpi.csv”,”r”)\nls=[]\nforlineinf:\nls.append(line.strip(”\n”).split(”,”))\nf.close()

7.BPython字符串采用[N:M]格式进行切片,获取字符串从索引N到M的子字符串(包含N,不包含M)。本题选择B选项。

8.C字符串的索引从0开始,t[20:21]是指字符串中索引是20的元素I,t[:9]是从索引0?8元素,用“+\r\n”连接字符串,最后输出IlovetheWorld。本题选择C选项。

9.D

10.B栈按先进后出的原则组织数据,所以入栈最早的元素最后出栈,本题选择B选项。

11.A用于循环逻辑的保留字:while、for、else、break、continue。try用于捕捉异常。

12.B

13.Alambda关键字用来定义匿名函数,语法为<函数名>=lambda<参数列表>:<表达式>。本题比较字符串大小,因为aa<bb,所以输出均为aa。本题选择A选项。

14.Brange()函数与for循环结合使用,一般可以创建一个整数列表,且range(start,stop[,step])包含3个参数,代表列表的开始、结束以及步长,但其中不包含stop参数的范围,即区间为左闭右开。print()函数的end参数用来设置输出格式,默认为换行。该题输出数字之间使用逗号分隔。本题选择B选项。

15.A在Python中,字典是存储可变数量键值对的数据结构,通过字典类型实现映射。字典使用花括号({})建立,每个元素是一个键值对,使用方式为{<键1>:<值1>,<键2>:<值2>,…,<键n>:<值n>},其中,键和值通过冒号连接,不同键值对通过逗号隔开。字典具有和集合类似的性质,即键值对之间没有顺序且不能重复。通过键可以索引值,并可以通过键修改值,因此可以直接利用键值对关系索引元素。索引模式:<值>=<字典变量>[<键>]。本题选择A选项。

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

17.Dinput()函数从控制台获得用户的一行输入,无论用户输入什么内容,inPut()函数都以字符串类型返回结果。当用户输入2时,n=’2’,这是字符2,不是数字,不能进行数值运算,故程序会执行except后面的语句,输出程序执行错误。本题选择D选项。

18.B一般较优秀的软件设计,应尽量做到高内聚、低耦合,即减弱模块之间的耦合性和提高模块内的内聚性,有利于提高模块的独立性。

19.B在Python中,字典是存储可变数量键值对的数据结构,通过字典类型实现映射,一个键对应一个值,键必须是唯一的,且必须是不可变数据类型,值可以是任何数据类型。字典具有和集合类似的性质,即键值对之间没有顺序且不能重复。字典可以通过”字典[’键’]”的形式访问对应的元素,即以键为索引进行访问。故描述错误的是B项。

20.D

21.D关系模型采用二维表来表示,简称表。本题选择D选项。

22.BB选项中正确的输出应为6+5,当Print()函数圆括号内的变量被引号标注,则该变量被视为字符串。本题选择B选项。

23.B栈是按“先进后出”的原则组织数据的,数据的插入和删除都在栈顶进行操作。本题选择B选项。

24.D注释可以在一行的任意位置开始,但只有在井号(#)后的部分才会被作为注释不被执行;Python有严格的格式要求,不能随意缩进,只有在需要的时候才在代码前加空格;Python允许在一行的末尾加分号,但一般不建议这么做,会影响代码的美观。本题选择D选项。

25.A一个非空的数据结构如果满足两个条件:①有且只有一个根结点;②每一个结点最多有一个前件,也最多有一个后件。则称该数据结构为线性结构。B项不满足条件①,不止一个根结点;C项,结点3有两个后件4和2,不满足条件②;D项,既不满足条件①,也不满足条件②。故答案为A项。

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

27.C在Python中,变量名的命名规则:以字母或下划线开头,后面跟字母、下划线和数字;不能以数字开头。本题选择C选项。

28.Ctime库是Python的标准库。使用gmtime()函数获取当前时间戳对应的对象;strftime()函数是格式化时间最有效的函数之一,几乎可以以任何通用格式输出时间,该函数利用一个格式字符串,对时间格式进行表示。本题选择C选项。

29.B外层for循环是将a[0]=[1,2,3],a[1]=[4,5,6],a[2]=[7,8,9]依次赋给变量c;内层for循环将变量j从0递增到2,即累加c[1]+c[2]+c[3]的值,所以内层循环加外层循环是计算1+2+3+4+5+6+7+8+9的值,s=45。

30.B单元测试主要针对模块的5个基本特征进行:模块接口测试,局部数据结构测试,重要的执行路径的检查,检查模块的错误处理能力,影响以上各点及其他相关点的边界条件测试。本题选择B选项。

31.Y

32.Y

33.Y

34.Y

35.Y

36.Y

37.N

38.N

39.Y

40.N

41.True

42.逗号、冒号

43.'3'

44.None

45.del

46.//

47.'yybcyyb'

48.[1,2,3]

49.45

50.(1,2,3,4,5)

51.lower=int(input(‘输入区间最小值:’))upper=int(inputs(‘输入区间最大值:’))fornuminrange(lower+1,upper):Ifnum>1:Foriin染个(2,num):If(num%i)==0:BreakElse:Print(num)题目要求输出两个整数之间(不包括这两个整数)的所有素数,因此mnge()函数的参数应为lower+1和upper。for循环遍历range(lower\r\n+l,upper)返回的每个整数num,判断该数是否为素数。如果num大于1(1既不是素数也不是合数),且该数能被取值范围为[2,num-1\r\n]的任何一个整数整除,那么该数一定不是素数,否则一定是素数。

52.?Importmathtry:a=eval(input('请输入底数:”))b=eval(input(‘请输入真数:’))c=math.log(b,a)exceptValueError:ifa<=0andb>0:Print(‘真数和底数都不能小于等于0’)exceptZeroDivisionError:print(’底数不能为1’)exceptNameError:print(输入必须为实数’)else:print(c)ax=/V(a>0,a≠1),那么指数x叫作以a为底N的对数,记作x\r\n=logaN其中a叫作对数的底数,叫作真数。要使用对数,需先导入math库,math.log(x[,base])返回x的自然对数,x>0。使用异常处理机制时,根据不同的错误类型,输出不同的信息内容,在值错误类型下,使用if判断语句将有可能错误的信息进行处理。

53.Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“请输入节假日名称”)Forlineinis:Ifs==line[1]Print(“{}的假期位于{}-{}之间”.format(line[1],line[2],line[3]))(2)Fi=open(“PY301-vacations.csv”,”r”)Is=[]Foulineinfi:Is.append(line.strip(“\\n”).split(“,”))S=input(“请输入节假日序号”).split(“”)WhiletrueForiins:Forlineinis:Ifi==line[0]Print(“{}({})的假期位于{}月{}日之间”.format(line[1],l

温馨提示

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

评论

0/150

提交评论