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

下载本文档

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

文档简介

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

一、单选题(30题)1.设元素集合为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)}

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

B.<class‘tuple’>

C.<class‘list’>

D.<class‘set’>

3.下列叙述中正确的是()。A.线性表的链式存储结构与顺序存储结构所需要的存储空间是相同的

B.线性表的链式存储结构所需要的存储空间一般要多于顺序存储结构

C.线性表的链式存储结构所需要的存储空间一般要少于顺序存储结构

D.线性表的链式存储结构与顺序存储结构在存储空间的需求上没有可比性

4.Is=[2,”apple”,[42,”yellow”,”misd”],1.2],表达式Is[2][-1][2]的结果是()。

A.mB.iC.sD.d

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

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

6.设str1=’*@python@*’,语句print(strl[2:].strip(’@’))的执行结果是()。

A.python@*B.lpython*C.*@python@*D.*python*

7.以下程序的输出结果是()。a=3.6e一1b=4.2e3print(b—a)

A.4199.64B.7.8e2C.0.6e一4D.4199.064

8.以下不属于Python文件操作方法的是()。

A.read()B.write()C.join()D.readline()

9.关于CSV文件的描述,下列选项中错误的是()。

A.CSV文件格式是一种通用的文件格式,应用于程序之间转移表格数据

B.CSV文件的每一行是一维数据,可以使用Python中的列表类型表示

C.CSV文件通过多种编码表示字符

D.整个CSV文件是一个二维数据

10.字典这种数据结构相较为其它,最大的特点是()

A.有序存储B.键值对应C.成员唯一D.可被迭代

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

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

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

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

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

12.以下关于Python二维数据的描述中,错误的是()。

A.CSV文件的每一行是一维数据,可以用列表、元组表示

B.从CSV文件获得数据内容后,可以用replace()来去掉每行最后的换行符

C.若一个列表变量里的元素都是字符串类型,则可以用join()合成字符串

D.列表中保存的二维数据,可以通过循环结构用writelines()写入CSV文件

13.以下程序的输出结果是()。11=[’aa’,[2,3,3.0]]print(11.index(2))

A.2B.3.0C.3D.ValueError

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

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

15.以下代码的输出结果是()。deffibRate(n):ifn<=0:Return-1elifn==1:return-1elifn==2:return1else:L=[1,5]foriinrange(2,n):L.append(L[-1]+L[-2])returnL[-2]%L[-1]print(fibRate(7))A.0.6B.28C.-1D.1

16.下面代码的输出结果是()。a=10b=1try:c=b//(b/a)print(C)except(IOError,ZeroDivisionError):print(”calculationerror”)else:print(”noerror”)

A.calculationerrorB.noerrorC.9.0D.9.0noerror

17.下面程序输出的结果是()。sl,s2=”Mom”,””Dad"Print(“{}loves{}format(s2,si))

A.DadlovesMomB.MomlovesDadC.sllovess2D.s2lovess1

18.下面哪个语句能够让列表中的名字按行输出?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))

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

20.面向对象方法中,将数据和操作置于对象的统一体中的实现方式是()。

A.结合B.抽象C.封装D.隐藏

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

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

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

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

23.Python提供3种基本的数字类型,它们是()。

A.整数类型、浮点数类型、复数类型

B.整数类型、二进制类型、浮点数类型

C.整数类型、二进制类型、布尔类型

D.整数类型、二进制类型、复数类型

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

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

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

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

26.以下不属于Python数据分析领域第三方库的是()。

A.scrapyB.numpyC.lmndasD.matplotlib

27.给以下程序填空,使得输出到文件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)+’,’

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

A.PythonCREB.NC.PythonD.PythonNCRE

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

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

30.生成一个k比特长度的随机整数的函数是()。

A.random.choice(k)

B.random.shuffle(k)

C.random.getrandbits(k)

D.random.sample(k)

二、判断题(10题)31.在类定义的外部没有任何办法可以访问对象的私有成员。

A.是B.否

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

A.是B.否

33.正则表达式元字符“s”用来匹配任意空白字符。

A.是B.否

34.在定义函数时,某个参数名字前面带有两个*符号表示可变长度参数,可以接收任意多个关键参数并将其存放于一个字典之中。

A.是B.否

35.定义类时所有实例方法的第一个参数用来表示对象本身,在类的外部通过对象名来调用实例方法时不需要为该参数传值。

A.是B.否

36.已知x为非空字符串,那么表达式“.join(x.split())==x的值一定为True。A.是B.否

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

A.是B.否

38.同一个列表对象中所有元素必须为相同类型。A.是B.否

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

A.是B.否

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

A.是B.否

三、填空题(10题)41.假设有Python程序文件abc.py,其中只有一条语句print(__name__),那么直接运行该程序时得到的结果为_____________。

42.Python标准库random中的sample(seq,k)方法作用是从序列中选择________(重复?不重复?)的k个元素。

43.表达式3**2的值为_________。

44.已知列表x=[1,2,3]和y=[4,5,6],那么表达式[(i,j)fori,jinzip(x,y)ifi==3]的值为____________。

45.表达式'aaasdf'.rstrip('af')的值为_______________。

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

47.表达式set([1,1,2,3])的值为____________________。

48.已知x={1:2,2:3,3:4},那么表达式sum(x.values())的值为_________。

49.Python运算符中用来计算集合交集的是__________。

50.表达式print(0b10101)的值为____________。

四、操作题(3题)51.考生文件夹下存在一个文件“PY101.py”,请写代码替换横线,不修改其他代码,实现以下功能。用键盘输入正整数n,按要求把n输出到屏幕。

格式要求:宽度为30个字符,以@填充,右对齐,带千位分隔符。如果输入的正整数超过30位,则按照真实长度输出。例如:用键盘输入的正整数n为5201314,屏幕输出@@@@@@@@@@@@@@@5,201,314

试题程序:

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

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

n=eval(input("请输入正整数”))print("{_____}".format(n))

52.考生文件夹下存在一个文件“PY301.py”,该文件是本题目的代码提示框架,其中代码可以任意修改。请按照源文件内部说明修改代码,实现以下功能。设计一个猜字母的程序,程序随机给出26个小写字母中的一个,答题者输入猜测的字母,若输入的不是26个小写字母之一,让用户重新输入;若字母在答案之前或之后,程序给出相应正确提示;若答错5次,则答题失败并退出游戏;若回答正确,程序输出回答次数并退出游戏。试题程序:#以下代码为提示框架#请在...处使用一行或多行代码替换#请在_____处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准

53.考生文件夹下存在一个文件“PY102.py”,请写代码替换横线,不修改其他代码,实现以下功能。使用jieba库,把题目给出的文本进行分词,并将分词后的结果输出。试题程序:#请在_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码_____(1)_____s="一件事情没有做过,就没有资格对此事发表看法"Is=_____(2)____print(Is)

参考答案

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

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

3.B线性链式存储结构中每个结点都由数据域与指针域两部分组成,增加了存储空间,所以一般要多于顺序存储结构。

4.C列表索引正向递增索引从0开始,反向递减索引从-1开始,ls[2][-1]\n[2]指的是列表中下标为2的元素中的下标为-1元素中的下标为2的元素,输出结果是s。本题选择C选项。

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

6.Astr1[2:]表示对字符串str1进行切片,即从序号为2的字符开始切片直到字符串结尾(字符串最左侧的字符序号为0),其结果为”python@*”;strip(chars)方法是从字符串中去掉其左侧和右侧chars中列出的字符,”python@*”.strip(’@’)表示将字符串左侧和右侧的”@”字符去掉,由于字符串最左侧和最右侧均无”@”字符,故结果为”python@*”。

7.A程序中b=4200,a=0.36,b—a=4199.64。本题选择A选项。

8.CPython文件读取方法有:f.read()、f.readline()、f.readlines()、f.seek(),Python文件写入方法有:f.write()、f.writelines()。本题选择C选项。

9.CCSV文件采用纯文本格式,通过单一编码表示字符。以行为单位,开头不留空行,行之间没有空行。每行表示一个一维数据,多行表示多维数据。以逗号分隔每列数据,列数据为空也要保留逗号。

10.B

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

12.D在Python中,writelines()方法是将一个所有元素为字符串的列表整体写入文件;write()方法是向文件写入一个字符串或字节流,每次写入后,会记录一个写入指针。二维列表对象输出为CSV文件采用遍历循环和字符串的join()方法相结合,方法如下:#ls代表二维列表,此处省略f=open('cpi.csv','w”)forrowinIs:f.write(“,”join(row)+“\\n')f.close()本题选择D选项。

13.D列表的index()方法用于从列表中找出某个对象第一个匹配项的索引位置,如果这个对象不在列表中会报一个异常。本题中11.index(2)是指在列表11中查找对象2,但列表中并不存在元素2,因此会异常。故答案为D项。

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

15.B将实参7传递给函数形参变量n,之后进入多分支结构,依次判断后,执行else后面的语句。for语句为foriin\r\nrange(2,7),i从2依次变化到6,循环5次,将L[-1]+L[-2]的值通过append()方法加入列表L中。当i=2时,L[-1]+L[-2]=5+1=6,将6添加到列表[中,此时L=[1,5,6];当i=3时,L[-1]+L[-2]=6+5=11,将11添加到列表L中,此时L=[l,5,6,ll];当i=4时,L[-1]+L[-2]=11+6=17,将17添加到列表L中,此时L=[l,5,6,ll,17];当i=5时,L[-1]+L[-2]=17+11=28,将28添加到列表L中,此时L=\r\n[1,5,6,11,17,28];当i=6时,L[-1]+L[-2]=28+17=45,将45添加到列表L中,此时L=\r\n[1,5,6,11,17,28,45]。最后L[-2]%L[-1]=28%45=28,故程序输出28。本题选择B选项。

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

17.APython使用format()格式化方法,语法格式为<模板字符串>.format(\n<逗号分隔的参数>),其中模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用花括号({})表示,对应fcmnat()方法中逗号分隔的参数。如果模板字符串有多个槽,且槽内没有指定序号,则按照槽出现的顺序分别对应format()方法中的不同参数。参数根据出现先后存在一个默认序号。本题选择A选项。

18.A

19.B

20.C封装是指从外面看只能看到对象的外部特性,对象的内部对外是不可见的,即将数据和操作置于对象的统一体中。本题选择C选项。

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

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

23.APython提供的3种基本的数字类型为整数类型、浮点数类型、复数类型,分别对应数学中的整数、实数和复数。本题选择A选项。

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

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

26.A在Python语言中,用于数据分析的第三方库有numpy、scipy、pandas和matplotlib。scrapy库是网络爬虫方向的第三方库。

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

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

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

30.Crandom.choice(k)用于从序列的元素中随机挑选一个元素;random.shuffle(k)用于将序列的所有元素随机排序;random.getrandbits(k)用于生成一个k比特长度的随机整数;random.sample(k)用于随机地从指定列表中提取出k个不同的元素。本题选择C选项。

31.N

32.N

33.Y

34.Y

35.Y

36.N

37.Y

38.N

39.Y

40.Y

41.__main__

42.不重复

43.9

44.[(3,6)]

45.'aaasd'

46.'Thefirst:97,thesecondis65'

47.{1,2,3}

48.9

49.&

50.21

51.n=eval(input(“请输入正整数:”))print(”{0:@>30,}”.format(n))该题目主要考查Python字符串的格式化方法。字符串的.format()格式化方法的语法格式为<模板字符串>.format(\r\n<逗号分隔的参数>)。题目的输出格式为右对齐、30个字符、以@填充、千位分隔符,横线处应填入0:@>30,或:@>30,。

52.

温馨提示

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

评论

0/150

提交评论