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

下载本文档

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

文档简介

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

一、单选题(30题)1.下列关于栈的叙述正确的是()。

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

2.某完全二叉树有256个结点,则该二叉树的深度为()。

A.7B.8C.9D.10

3.以下保留字不属于分支结构的是()。

A.ifB.elseC.whileD.elif

4.执行以下代码的结果是?foo={1,5,2,3,4,2}foo={}len(foo)

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

5.下列代码的结果是()A.A.numgreaterthan4B.numlessthan4C.TrueD.False

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

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

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

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

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

7.需求分析的主要任务是()。

A.确定软件系统的功能B.确定软件开发方法C.确定软件开发工具D.确定软件开发人员

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

9.下面的排序算法中初始数据集的排列顺序对算法的性能无影响的是()A.插入排序B.堆排序C.冒泡排序D.快速排序

10.在Python的类定义中,对函数变量的访问形式为()。

A.<对象>.<变量>B.<对象>.方法(变量)C.<类名>.<变量>D.<对象>.方法(变量)

11.使用一个还未赋予对象的变量错误提示是()

A.NameErrorB.KeyErrorC.SystemErrorD.ReferenceError

12.关于函数定义,以下形式错误的是()。

A.deffoo(*a,b)

B.deffoo(a,b=10)

C.deffoo(a,*b)

D.deffoo(a,b)

13.关于表达式id(‘45’)的结果的描述,错误的是()。

A.是‘45’的内存地址B.可能是45396706C.是一个正整数D.是一个字符串

14.以下程序的输出结果是()。t=10.5defabove_zero(t): returnt>0

A.TrueB.FalseC.10.5D.没有输出

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

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

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

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

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

16.给以下程序填空,使得输出到文件a.txt里的内容是‘90’,‘87’,‘93’的选项是()。y=[‘90’,‘87’,‘93’]l=‘’withopen(“a.txt”,‘w’)asfo: forziny: __________ fo.write(1.strip(‘,’))

A.l=‘,’.join(y)

B.l+=“‘{}’”.format(z)

C.l+=“‘{}’”.format(z)+‘,’

D.l+=‘{}’.format(z)+‘,’

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

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

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

A.0B1014B.0bl010C.0B1019D.0bC3F

19.以下关于函数优点的描述中,正确的是()。

A.函数可以表现程序的复杂度B.函数可以使程序更加模块化C.函数可以减少代码使用次数D.函数便于书写

20.如果文件a.txt在目录“C:\\A”下,执行以下代码会发生的操作是()。importosos.rmdir(r'C:\\A’)

A.删除文件夹A,保留文件a.txt

B.删除文件夹A和文件a.txt

C.删除文件a.txt,保留文件夹A

D.OSError

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

A.NoneB.FalseC.FalseorFalseD.True

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

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

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

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

24.下列函数中,不是Python内置函数的是()。

A.perf_counter()B.all()C.abs()D.format()

25.以下关于Python函数的描述中,正确的是()。

A.函数eVal()可以用于数值表达式的求值,如eval("2*3+1”)

B.Python中,def和return是函数必须使用的保留字

C.Pythcm函数定义中没有对参数指定类型,这说明参数在函数中可以当作任意类型使用

D.—个函数中只允许有一条return语句

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

A.pygameB.scipyC.pdfminerD.pyramid

27.关于Python文件打开模式,表示错误的是()。

A.rtB.nbC.abD.wt

28.以下程序的输出结果是()。L1=[4,5,6,8].reverse()print(L1)

A.[8,6,5,4]B.[4,5,6,8]C.NoneD.[4,5,6,8,]

29.下面的d是一个字典变量,能够输出数字2的语句是()。d={'food1:{'cake1:1,'egg1:5},'cake':2,'egg’:3}

A.print(d['food1]['egg1])

B.print(d['cake'])

C.print(d['food1][-1])

D.print(d['cake'][1])

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

A.tryB.elseC.forD.continue

二、判断题(10题)31.4j是合法Python数字类型。

A.是B.否

32.Python集合不支持使用下标访问其中的元素。

A.是B.否

33.调用函数时,在实参前面加一个型号*表示序列解包。

A.是B.否

34.在Python中可以使用id作为变量名,但是不建议这样做。

A.是B.否

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

A.是B.否

36.删除列表中重复元素最简单的方法是将其转换为集合后再重新转换为列表。

A.是B.否

37.Python字典中的“键”不允许重复。

A.是B.否

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

A.是B.否

39.不可以在同一台计算机上安装多个Python版本。

A.是B.否

40.相同内容的字符串使用不同的编码格式进行编码得到的结果并不完全相同。

A.是B.否

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

42.表达式round(3.7)的值为_________。

43.Python源代码程序伪编译后的文件扩展名为__________。

44.对于带有else子句的for循环和while循环,当循环因循环条件不成立而自然结束时________(会?不会?)执行else中的代码。

45.表达式len(range(1,10))的值为___________。

46.表达式5if5>6else(6if3>2else5)的值为_________。

47.表达式[indexforindex,valueinenumerate([3,5,7,3,7])ifvalue==max([3,5,7,3,7])]的值为__________________。

48.表达式len('abc'.ljust(20))的值为______________。

49.已知x=[1,2,3,4,5],那么执行语句delx[1:3]之后,x的值为____________。

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

四、操作题(3题)51.考生文件夹下存在两个Python源文件“PY301-1.py”和“PY301-2.py”,分别对应两个问题,请按照文件内说明修改代码,实现以下功能。李白,字太白,号青莲居士,又号“谪仙人”,是唐代伟大的浪漫主义诗人,被后世誉为“诗仙”。考生文件夹下有一个“关山月.txt”文件,内容如下。明月出天山,苍茫云海间。长风几万里,吹度玉门关。汉下白登道,胡窥青海湾。由来征战地,不见有人还。戍客望边邑,思归多苦颜。高楼当此夜,叹息未应闲。问题1:这是一段由标点符号分隔的文本,请编写程序,以“。”句号为分隔,将这段文本转换为诗词风格,输出到文件“关山月-诗歌.txt”中。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准fi=open("关山月.txt","r")…fi.close()fo.close()问题2:把问题1生成的“关山月-诗歌.txt”文件,以每行为单位,保留标点符号为原顺序和位置,输出全文的反转形式。将文件保存在考生文件夹下并命名为“关山月-反转.txt”。输出的形式如下。高楼当此夜,叹息未应闲。戍客望边邑,思归多苦颜。由来征战地,不见有人还。汉下白登道,胡窥青海湾。长风几万里,吹度玉门关。明月出天山,苍茫云海间。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准fi=open("关山月-诗歌.txt","r")fo=open(“关山月-反转.txt","w")…fi.close()fo.close()

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

参考答案

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

2.C根据完全二叉树的性质:具有n个结点的完全二叉树的深度为[log2n]+1。本题中完全二叉树共有256个结点,则深度为[log2256]+1=8+1=9。本题选择C选项。

3.Cwhile属于循环结构。

4.A

5.A

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

7.A需求分析是软件开发之前必须要做的准备工作之一。需求是指用户对目标软件系统在功能、行为、性能、设计约束等方面的期望。故需求分析的主要任务是确定软件系统的功能。本题选择A选项。

8.D

9.B

10.A访问函数的变量时,需要使用点表示法:<对象>.<变量名>。本题选择A选项。

11.A

12.APython在定义函数的时候,不仅可以设置普通的形参,如”deffun(arr1,arr2=’我是2号参数’)”(其中arr1为必传参数,arr2为可选参数),还可以传入两种特殊的参数:带*或**的参数。这两类形式的参数都可以传人任意数量的实参,它们的不同点主要在于*参数传入的为一个元组(tuple);**参数传人的则为一个字典(diet)。由于传入的参数数量不确定,因此当它们与普通参数放在一起时,必须把它们放在最后。故A项错误。

13.Did()函数的返回值是对象的内存地址,属于数字类型。本题选择D选项。

14.D在Python中,return语句用来结束函数并将程序返回到函数被调用的位置继续执行。return语句可以出现在函数的任何部分,可以同时将0个、1个或多个函数运算结果返回给函数被调用处的变量。函数可以没有return,此时函数并不返回值。return返回的是值而不是表达式,且此段语句并未调用函数,故程序无输出。本题选择D选项。

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

16.C由题意可知,写入文件的是‘90’,‘87’,‘93’,字符之间有逗号分隔。A选项是将字符通过逗号连接成形如‘90’,‘87’,‘93’的字符串;B选项没有使用逗号分隔;D选项由于在花括号({})外部没有使用引号,相加的结果为本题选择C选项。

17.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选项。

18.B二进制整数以Ob开头,后面跟二进制数0和1。A、C、D中有4、9、C、3、F,这些都不是二进制数。本题选择B选项。

19.B函数定义:函数是指一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需要调用其函数名即可。函数能提高应用的模块性和代码的重复利用率。本题选择B选项。

20.D使用rmdir()删除目录之前要先清除其中所有的文件,否则会报OSError错误。本题选择D选项。

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

22.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选项。

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

24.Aperf_counter()是time库的函数,调用该函数需要先导入time库。

25.A在Python中,return语句用来结束函数并将程序返回到函数被调用的位置继续执行。re-turn\n语句可以出现在函数的任何部分,可以同时将0个、1\n个或多个函数运算结果返回给函数被调用处的变量。函数可以没有return语句,此时函数并不返回值。B、D选项错误。Python函数定义中没有对参数指定类型,则函数内的默认值参数是对函数的默认值参数属性__defaults__的引用,C选项错误。eval()函数将去掉字符串最外侧的引号,并按照Python语句方式执行去掉引号后的字符内容,使用方式为<变量>=eval(\n<字符串>),其中变量用来保存对字符串内容进行Python运算的结果,故函数eval()可以用于数值表达式的求值,如eval(”2*\n3+1”)=7。本题选择A选项。

26.D属于Web开发的Python第三方库有Django、pyrami(l、Flask等。pygame属于游戏开发方向,scipy属于数据分析方向,pdfminer属于文本处理方向。本题选择D选项。

27.BPython中open()函数提供了7种基本的文件打开模式:r、w、x、a、b、t、+。其中,r、w、x、a可以和b、t、+组合使用。故表示错误的是B项。

28.Creversed()方法的作用是将整个列表中的元素反转,第一个元素放在最后一个元素位置上,最后一个元素放在第一个元素位置上;第二个元素放在倒数第二个元素位置上,倒数第二个元素放在第二个元素位置上。最终列表为[8,6,5,4],但此方法本身无返回值。本题选择C选项。

29.B在Python中,字典是存储可变数量键值对的数据结构,键和值可以是任意数据类型,通过键索引值,并可以通过键修改值。因此,可以直接利用键值对关系索引元素。索引语法格式为\n<值>=<字典变置>[<键\n>]。故能够正确索引字典并输出数字2的语句是Print(d['cake’]),本题选择B选项。

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

31.Y

32.Y

33.Y

34.Y

35.N

36.Y

37.Y

38.N

39.N

40.Y

41.3

42.4

43.pyc

44.会

45.9

46.6

47.[2,4]

48.20

49.[1,4,5]

50.45

51.(1)fi=open("关山月.txt”,"r")fi=open("关山月-诗歌.txt","w")Txt=fi.read()Is=txt.split(“。”)Fo.write(“。\\n”.join(is))fi.close()fo.close()(2)fi=open("关山月-诗歌.txt","r")fo=open(“关山月-反转.txt","w")Txt=fi.readlines()Txt.reverse()Forrowintxt:Fo.write(row)fi.close()fo.close()⑴题目给出的文件内容是一段文本,要把文本改为诗词风格,即以全角句号分隔,可使用字符串的split()方法,该方法返回的是一个列表;列表的每个元素都是一行诗句,使用join()方法把列表的每一个元素写入“关山月_诗歌.txt”文件中,连接符为全角句号和换行符;操作完成之后将打开的文件用

温馨提示

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

评论

0/150

提交评论