山东省淄博市全国计算机等级考试Python语言程序设计模拟考试(含答案)_第1页
山东省淄博市全国计算机等级考试Python语言程序设计模拟考试(含答案)_第2页
山东省淄博市全国计算机等级考试Python语言程序设计模拟考试(含答案)_第3页
山东省淄博市全国计算机等级考试Python语言程序设计模拟考试(含答案)_第4页
山东省淄博市全国计算机等级考试Python语言程序设计模拟考试(含答案)_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

山东省淄博市全国计算机等级考试Python语言程序设计模拟考试(含答案)学校:________班级:________姓名:________考号:________

一、单选题(30题)1.下面不是“+”的用法的是()。

A.字符串连接B.逻辑与C.算术加法D.单目运算

2.以下关于Python全局变量和局部变量的描述中,错误的是()。

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

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

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

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

3.在软件开发中,需求分析阶段产生的主要文档是()。

A.软件集成测试计划B.软件详细设计说明书C.用户手册D.软件需求规格说明书

4.在Python中,能够处理图像的第三方库是()。

A.pyinstallerB.pyserialC.pygameD.PIL

5.以下不属于Python语言保留字的是()。

A.passB.useC.withD.None

6.以下代码的输出结果是()。Is=[[1,2,3],’python’,[[4,5,’ABC’],6],[7,8]]print(ls[2][l])

A.'ABC'B.pC.4D.6

7.以下选项不属于组合数据类型的是()。

A.字典类型B.复数类型C.列表类型D.集合类型

8.以下关于Python文件打开模式的描述中,错误的是()。

A.只读模式是rB.覆盖写模式是wC.追加写模式是aD.创建写模式是n

9.以下程序绘制的图形是()。importturtleastforiinrange(1,7): t.fd(50) t.left(60)

A.正方形B.六边形C.三角形D.五角星

10.以下程序的输出结果是()。>>>s=(3,)>>>type(s)A.<class‘diet’>

B.<class‘tuple’>

C.<class‘list’>

D.<class‘set’>

11.Python使用缩进作为语法边界,一般建议怎样缩进?

A.TABB.两个空格C.四个空格D.八个空格

12.以下程序的输出结果是()。a=divmod(5,2)b=divmod(2,6)c=set(a+b)print(sum(c))

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

13.以下代码的输出结果是()。forsin"PythonNCRE":ifs=="N”:breakprint(s,end="")

A.PythonCREB.NC.PythonD.PythonNCRE

14.黑盒测试技术依据的是()。

A.软件功能的描述B.程序的逻辑结构C.程序的物理结构D.软件行为的描述

15.以下代码运行的结果为:a=b=['AI教育',''];

A.append('七月在线')print(b)

B.['AI教育','']

C.['AI教育','','七月在线']

D.['七月在线']

E.NoneType

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

A.在函数定义时必须固定参数的数量

B.使用位置参数传参时实参的数量和顺序必须和函数声明时的参数一样

C.若是参数有默认值,在调用函数时没有给参数赋值,调用的函数就会使用这个默认值

D.关键字参数传参是指在调用函数时通过参数名传递值

17.以下关于文件的描述中,正确的是()。

A.使用open()打开文件时,必须要用r或w指定打开方式,不能省略

B.采用readlineS()可以读入文件的全部内容,返回一个列表

C.文件打开后,可以用write()控制对文件内容的读写位置

D.如果没有采用close()关闭文件,Python程序退出时文件将不会自动关闭

18.下面不属于面向对象的特点是()。

A.封装B.多态C.性能高D.继承

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

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

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

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

D.空字符串可以表示为""或"

20.以下程序中,while循环的循环次数是()。i=0whilei<10: ifi<1: print(“Python”) continue ifi==5: print(“World!”) break i+=1

A.10B.5C.4D.死循环,不能确定

21.下面代码的输出结果是()。deff(n):ifn==1:return1else:returnn*f(n—1)print(f(4))

A.24B.4C.0D.10

22.可以认为list类型是一种()结构

A.树型B.队列C.StackD.链表

23.在Python中,不属于组合数据类型的是()。

A.浮点数类型B.列表类型C.字典类型D.字符串类型

24.x=2.6,表达式round(x)的结果是()。

A.2.6B.2C.3D.2.0

25.以下描述中,正确的是()。

A.如果s是一个序列,s=[1,”kate”,True],s[3]返回True

B.如果x不是s的元素,xnotins返回True

C.如果x是s的元素,xins返回1

D.如果s是一个序列,s=[1,”kate”,False],s[一1]返回True

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

A.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

27.在银行业务中,实体客户和实体银行之间的联系是()。

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

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

B.IloveWorld

C.IlovetheWorld

D.IlovetheWorl

29.以下关于Python的描述中,正确的是()。A.条件4<=5<=6是合法的,输出False

B.条件4<=5<=6是不合法的

C.条件4<=5<=6是合法的,输出True

D.条件4<=5<=6是不合法的,拋出异常

30.执行exec('l1=[1,2,3]')后:()

A.[1,2,3]B.l1=[1,2,3]C.异常D.没有任何返回

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

A.是B.否

32.生成器推导式比列表推导式具有更高的效率,推荐使用。

A.是B.否

33.Python类不支持多继承。

A.是B.否

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

A.是B.否

35.定义类时,在一个方法前面使用@staticmethod进行休息,则该方法属于静态方法。

A.是B.否

36.在函数内部没有任何声明的情况下直接为某个变量赋值,这个变量一定是函数内部的局部变量。

A.是B.否

37.形参可以看做是函数内部的局部变量,函数运行结束之后形参就不可访问了。

A.是B.否

38.在调用函数时,可以通过关键参数的形式进行传值,从而避免必须记住函数形参顺序的麻烦。

A.是B.否

39.不同作用域中的同名变量之间互相不影响,也就是说,在不同的作用域内可以定义同名的变量。

A.是B.否

40.对于Python类中的私有成员,可以通过“对象名._类名__私有成员名”的方式来访问。

A.是B.否

三、填空题(10题)41.运算符%__________(可以/不可以)对浮点数进行求余数操作。

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

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

44.表达式sorted([13,1,237,89,100],key=lambdax:len(str(x)))的值为___________________________________。

45.表达式'Thefirst:{1},thesecondis{0}'.format(65,97)的值为______________________________。

46.Python语句list(range(1,10,3))执行结果为___________________。

47.已知x=[3,5,7],那么执行语句x[len(x):]=[1,2]之后,x的值为______________。

48.Python标准库os.path中用来判断指定路径是否为文件夹的方法是______________。

49.已知f=lambdax:5,那么表达式f(3)的值为_____________。

50.已知x=[1,2,3,2,3],执行语句x.remove(2)之后,x的值为____________。

四、操作题(3题)51.在考生文件夹下有一个文件“PY102.py”,请按照文件内的说明,完善代码,实现下面功能:用键盘输入一个十进制数保存在变量s中,转换为二进制数输出显示在屏幕上,示例如下。请输入一个十进制数:25转换成二进制数是:11001试题程序:#请在程序的_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码s=input("请输入一个十进制数:")num=_____(1)_____print("转换成二进制数是:{_____(2)_____}".format(_____(3)_____))

52.考生文件夹下存在3个Python源文件,分别对应3个问题;1个文本文件,作为本题目的输入数据,请按照源文件内部说明修改代码,实现以下功能。《卖火柴的小女孩》是丹麦童话故事作家安徒生写的一篇童话故事,发表于1846年。主要讲了一个卖火柴的小女孩在富人阖家欢乐、举杯共庆的大年夜冻死在街头的故事。这里给出《卖火柴的小女孩》的一个网络版本文件,文件名为“小女孩.txt”。问题1:在“PY301-1.py”文件中修改代码,对“小女孩.txt”文件进行字符频次统计,输出频次最高的中文字符(不包含标点符号)及其频次,字符与频次之间采用英文冒号(:)分隔,将输出结果保存在考生文件夹下,命名为“PY301-l.txt”。示例格式如下。的:83试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#请在处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准…fo=open("PY301-1.txt","w")d={}fo.write("{}:{}".format(_____))fo.close()问题L在“PY301-2.Py”文件中修改代码,对“小女孩.txt”文件进行字符频次统计,按照频次由高到低,输出前10个频次最高的字符,不包含回车符,字符之间无间隔,连续输出,将输出结果保存在考生文件夹下,命名为“PY301-2.txt”。示例格式如下。,的一...(共10个字符)试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准fo=open("PY301-2.txt",”w”)…d={}…Is=list(d.items())ls.sort(key=lambdax:x[l],reverse=True)#此行可以按照字符频次由高到低排序…问题3:在PY301-3.py文件中修改代码,对“小女孩.txt”文件进行字符频次统计,将所有字符按照频次从高到低排序,字符包括中文、标点、英文等,但不包含空格符和回车符。将排序后的字符及频次输出到考生文件夹下,文件名为“小女孩-频次排序.txt”。字符与频次之间采用英文冒号(:)分隔,各字符之间采用英文逗号(,)分隔,参考CSV格式,最后无逗号,文件内部示例格式如下。着:30,那:29,火:29试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准…d={}…Is=list(d.items())Is.sort(key=lambdax:x[1]#reverse=True)#此行可以按照字符频次由高到低排序

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.B“+”号的运算包括字符串连接、算术加法和单目运算。

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

3.D需求分析阶段的工作可以概括为:需求获取、需求分析、编写需求规格说明书、需求评审四个方面。所以选择D。

4.DPIL库是Python在图像处理方面的重要的第三方库,支持图像存储、处理及显示,它能够处理几乎所有的图片格式,可以完成对图像的缩放、剪裁、叠加以及为图像添加线条、图像及文字等操作。使用Python处理与图像相关的程序,首选PIL库。本题选择D选项。

5.BPython总共有35个保留字,分别是:and,as,assett,async,await,break,class,eontinue,def,del,elif,else,except,False,fihally,for,from,global,if,impor.t,in,is,lambda,None,nonlocal,not,or,pass,raise,return,True,try,whiIe,with,yield。

6.D列表索引从0开始,所以ls[2]\n[1]指的是列表中索引为2的元素[[4,5,’ABC’],6]中索引为1的元素6,所以输出结果是6。本题选择D选项。

7.B能够表示多个数据的类型称为组合数据类型。Python语言中最常用的组合数据类型有3大类:集合类型、序列类型(典型代表是字符串类型和列表类型)和映射类型(典型代表是字典类型)。复数类型不属于组合数据类型。本题选择B选项。

8.D文件的打幵模式如下。r:只读模式,如果文件不存在,返回异常FileNotFoundError。x:创建写模式,文件不存在则创建,存在则返回异常FileExistsError。w:覆盖写模式,文件不存在则创建,存在则完全覆盖原文件。a:追加写模式,文件不存在则创建,存在则在原文件最后追加内容。文件打开模式中没有n,本题选择D选项。

9.B先用import导入turtle库,for循环依次将1~6赋给变量i,i被依次赋值为1、2、3、4、5、6,fd()是画笔当前的前进方向,left()是画笔移动的角度,故绘制出来的是六边形。本题选择B选项。

10.B变量s是元组类型,type()返回的是表达式的值的类型。本题选择B选项。

11.C

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

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

14.A黑盒测试又称功能测试或数据驱动测试,着重测试软件功能,是把程序看成一只黑盒子,测试者完全不了解,或不考虑程序的结构和处理过程。它根据规格说明书的功能来设计测试用例,检查程序的功能是否符合规格说明的要求。\n白盒测试是把程序看成装在一只透明的白盒子里,测试者完全了解程序的结构和处理过程。它根据程序的内部逻辑来设计测试用例,检查程序中的逻辑通路是否都按预定的要求正确地工作。

15.B

16.A在Python中,在函数定义时是可以设计可变数量参数的,通过在参数前加星号(*)实现。可变参数在定义时只有两种变现形式:*param和**param,前者表示可以接受多个位置参数收集的实参组成一个元组,后者表示可以接收多个关键字参数收集的实参名和值组成一个字典。

17.B使用Open()打开文件时,省略打开方式会默认以只读方式打开;文件打开后,可以用seek()控制对文件内容的读写位置,write()方法只是向文件写人一个字符串或是字节流;如果没有采用close()关闭文件,有可能会导致数据丢失。Python程序退出时文件一般会自动关闭。本题选择B选项。

18.CA、B、D三个选项都是面向对象编程的特点,而C选项则是面向过程的优点,因为面向对象是类调用需要实例化,开销比较大,比较消耗资源,所以面向过程的性能会比面向对象高。

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

20.Dwhile循环的判断条件为真时,进入循环体;判断条件为假时,直接执行while同级的代码。初始值为i=0,进入循环体之后,因为i<1,执行continue语句跳出本次循环,进入下一次循环。i的值始终为0,故程序为死循环。本题选择D选项。

21.A该代码的功能是根据传人的参数求取该数的阶乘,经过一系列的运算将结果返回,4的阶乘为24。

22.C

23.APython的组合数据类型包括元组、列表、字典及集合等。本题选择A选项。

24.Cround(x,d)函数是指对x四舍五入,保留d位小数,无参数d则返回四舍五入的整数值。因此round(2.6)=3。本题选择C选项。

25.B序列的索引序号从0开始编号,所以s=[1,”kate”,True]时,s[3]=0,返回False,A项错误。xins(如果x是s的元素,返回True;否则返回False);xnotins(如果x不是s的元素,返回True;否则返回False),B项正确、C项错误。序列类型使用的索引体系可以是正向递增序号(从0开始递增),也可以是反向递减序号(从一1开始递减),所以s[一1]=False,返回的是False,D项错误。

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

27.D一个客户可以在多家银行办理业务,一家银行也有多个客户办理业务,因此,实体客户和实体银行之间的联系是多对多。

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

29.C判断条件4<=5<=6是成立的,故输出True。本题选择C选项。

30.D

31.Y

32.Y

33.N

34.Y

35.Y

36.Y

37.Y

38.Y

39.Y

40.Y

41.可以

42.[2,4]

43.'3'

44.[1,13,89,237,100]

45.'Thefirst:97,thesecondis65'

46.[1,4,7]

47.[3,5,7,1,2]

48.isdir()

49.5

50.[1,3,2,3]

51.s=input(“请输入一个十进制数:”)num=int(s)Prim(”转换成二进制数是:{:b}".format(num))本题考查input()函数和format()方法的使用。由于inPiit()函数返回的结果为字符串类型,所以需要将s转换为整数类型用于计算,这可以使用int()函数,因此第1空应填入int(s)。题目要求以二进制数输出,可使用format()方法完成,对于整数类型,输出格式包括6种:b表示输出整数的二进制方式;C表示输出整数对应的unicode字符;d表示输出整数的十进制方式;0表示输出整数的八进制方式;x表示输出整数的小写十六进制方式;X表示输出整数的大写十六进制方式。因此第2空应填入:b,第3空应填入num。

52.(1)fi=open("小女孩.txt","r")fo=open(”PY301—1.txt”,”w”)txt=fi.read()d={}\r\nexclude=",。!?、()【】<>《》=:+-*-“”…"forwordintxt:ifwordinexclude:continueelse:d[word]=d.get(word,0)+1ls=list(d.items())ls.sort(key=lambda\r\nx:x[1],reverse=True)fo.write(”{}:{}”format(ls[0][0],ls[0][1]))fo.close()(2)fi=open("小女孩.txt","r")fo=open(”PY301—2.txt”,”w”)txt=fi.read()d={}forwordintxt;d[word]=d.get(word,0)+1deld["\\n"]ls=list(d.items())ls.sort(key=lambdax:x[1],reverse=True)#此行可以按照词频由高到低排序foriinrange(10);fo.write(ls[i][0])fi.close()fo.close()(3)fi=open("小女孩.txt","r")fo=open(小女孩-频次排序。txt","w")txt=fi.read()d={}forwordintxtd[word]=d.get(word,0)+1deld[""]deld["\\n"]ls=list(d.items())ls.sort(key=lambdax:x[1],reverse=True)#此行可以按照词频由高到低排序foriin\r\nrange(len(ls)):ls[i]="{}:{}".format(ls[i][0],ls[i][1])fo.write(",".join(ls))fi.close()fo.close()(1)首先使用open()函数打开文件“小女孩.txt”,把文件的内容通过read()方法保存到变量txt中;定义一个字符串变量exclude用来存放标点符号。然后用for循环遍历txt中的每个字符(word),并使用if条件进行判断,若该字符在变量exclude中,说明该字符为标点符号,跳出该循环;否则将该字符作为

温馨提示

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

评论

0/150

提交评论