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

下载本文档

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

文档简介

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

一、单选题(30题)1.文件exam.txt与以下程序在同一目录下,其内容是一段文本bigBen,以下程序的输出结果是()。f=open(“exam.txt”)print(f)f.close()

A.bigBenB.exam.txtC.<_io.TextIOWrapper…>D.exam

2.以下代码的输出结果是()。Forsin"HelloWorld":ifs==”W”:continueprint(s,end="")

A.WorldB.HelloC.HelloorldD.HelloWorld

3.下列关于Python中复数类型的描述错误的是()。

A.复数由实数部分和虚数部分构成

B.复数可以看作二元有序实数对(a,b)

C.虚数部分必须有后缀j,且为小写

D.复数中的虚数部分不能单独存在,必须有实数部分

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

A.0B1014B.0b1010C.0B1019D.0bC3F

5.S=’1234567890’,以下表示’1234’的选项是()。

A.s[1:5]B.s[0:3]C.s[一10:-5]D.s[0:4]

6.以下关于Python语言中try语句的描述中,错误是()。

A.try用来捕捉执行代码发生的异常,处理异常后能够回到异常处继续执行

B.当执行try代码块触发异常后,会执行except后面的语句

C.一个try代码块可以对应多个处理异常的except代码块

D.try代码块不触发异常时,不会执行except后面的语句

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

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

B.Print(”6+5")的输出是11

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

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

8.下面叙述中错误的是()。

A.软件测试的目的是发现错误并改正错误

B.对被调试的程序进行“错误定位”是程序调试的必要步骤

C.程序调试通常也称为Debug

D.软件测试应严格执行测试计划,排除测试的随意性

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

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

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

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

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

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

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

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

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

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

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

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

12.以下关于Python中try语句的描述中,错误的是()。

A.try用来捕捉执行代码发生的异常,处理异常后能够回到异常处继续执行

B.当执行try代码块触发异常后,会执行except后面的语句

C.一个try代码块可以对应多个处理异常的except代码块

D.try代码块不触发异常时,不会执行except后面的语句

13.不能使下面代码结束的是()。whileTrue:inp=eval(input(”请输入一个数值:”))ifinp//3:break

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

14.初始化实例对象时,调用的是魔法函数是()A.initB.newC.cmpD.del

15.以下程序的输出结果是()。s=”LOVES'’print(”{:*^13}".format(s))

A.LOVESB.********LOVESC.LOVES********D.****LOVES****

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

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

17.以下关于浮点数3.0和整数3的描述,正确的是()。

A.两者使用相同的硬件执行单元B.两者使用相同的计算机指令处理方法C.两者是相同的数据类型D.两者具有相同的值

18.下列哪个语句在Python中是非法的?()

A.x=y=z=1B.x=(y=z+1)C.x,y=y,xD.x+=y

19.下面代码的输出结果是()。list=[“1””3”,”5”]defapp(x):list,append(x)app(“7”)print(list)

A.[‘1’,’3’,’5’]

B.[‘1’,’3’,’5’,'7']

C.[‘7’]

D."l,3,5,7"

20.下列选项中不属于结构化程序设计原则的是()。

A.可封装B.自顶向下C.模块化D.逐步求精

21.以下程序的输出结果是()。Is=list(range(5))print(Is)

A.{0,1,2,3,4}B.[0,1,2,3,4]C.{l,2,3,4}D.[l,2,3,4]

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

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

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

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

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

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

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

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

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

24.下面关于CSV文件描述错误的是()。

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

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

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

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

25.软件生命周期是指()。A.软件产品从提出、实现、使用维护到停止使用退役的过程

B.软件从需求分析、设计、实现到测试完成的过程

C.软件的开发过程

D.软件的运行维护过程

26.以下属于Python的映射类型的是()。

A.strB.tupleC.listD.diet

27.正则中的^符号,用在一对中括号中则表示要匹配()

A.字符串的开始B.除中括号内的其它字符C.字符串的结束D.仅中括号内含有的字符

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

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

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

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

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

29.以下关于文件的描述中,错误的是()。

A.文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容

B.可以使用open()打开文件,用close()关闭文件

C.使用read()可以从文件中读入全部文本

D.使用readlines()可以从文件中读入一行文本

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

A.print(d[’food’][’egg’])

B.print(d[’cake’])

C.print(d[’food’][一1])

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

二、判断题(10题)31.Python使用缩进来体现代码之间的逻辑关系。

A.是B.否

32.已知A和B是两个集合,并且表达式AB的值一定为True。A.是B.否

33.标准库os的rename()方法可以实现文件移动操作。

A.是B.否

34.Python变量名区分大小写,所以student和Student不是同一个变量。

A.是B.否

35.Python字符串方法replace()对字符串进行原地修改。

A.是B.否

36.使用列表对象的remove()方法可以删除列表中首次出现的指定元素,如果列中不存在要删除的指定元素则抛出异常。

A.是B.否

37.如果需要连接大量字符串成为一个字符串,那么使用字符串对象的join()方法比运算符+具有更高的效率。

A.是B.否

38.表达式pow(3,2)==3**2的值为True。

A.是B.否

39.如果在函数中有语句return3,那么该函数一定会返回整数3。

A.是B.否

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

A.是B.否

三、填空题(10题)41.表达式{1,2,3,4}-{3,4,5,6}的值为__________________。

42.已知x={1:2,2:3},那么表达式x.get(3,4)的值为____。

43.表达式'ab'in'acbed'的值为________。

44.已知列表x=[1,3,2],那么表达式[valueforindex,valueinenumerate(x)ifindex==2]的值为_______________。

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

46.Python3.x语句print(1,2,3,sep=',')的输出结果为________________。

47.表达式chr(ord('A')+2)的值为__________。

48.当在字符串前加上小写字母_____或大写字母_____表示原始字符串,不对其中的任何字符进行转义。

49.使用列表推导式得到100以内所有能被13整除的数的代码可以写作___________________________________。

50.执行语句x,y,z=map(str,range(3))之后,变量y的值为___________。

四、操作题(3题)51.考生文件夹下存在一个文件PY101.py,请写代码替换横线,不修改其他代码,实现以下功能:随机选择一个手机品牌屏幕输出。

试题程序:

#请在程序的…处使用一行或多行代码替换

#请在程序的______处使用一行代码替换#注意:请不要修改其他已给出代码

import________brandlist=[’三星’,’苹果’,’vivo’,’OPPO’,’魅族’]random.seed(0)

……

print(name)

52.考生文件夹下存在一个文件“PY102.Py”,请写代码替换横线,不修改其他代码,实现以下功能。用键盘输入一段文本,保存在一个字符串变量s中,分别用Python内置函数和jieba库中已有函数计算字符串s的中文字符个数和中文词语个数。注意:中文字符包含中文标点符号。示例格式如下。

键盘输入:科技是第一生产力屏幕输出:中文字符数为8,中文词语数为4。

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

#注意:请不要修改其他已给出代码importjiebas=input("请输入一个字符串")n=_____(1)_____m=_____(2)_____print("中文字符数为{},中文词语数为{}format(n,m))

53.考生文件夹下存在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)#此行可以按照字符频次由高到低排序

参考答案

1.Copen()函数打开一个文件,并返回可以操作这个文件的变量f,并且open()函数有两个参数:文件名和打开模式。本题只是打开了文件,并没有对文件进行操作,因此不会输出文件的内容。print(f)语句输出的是变量f代表的文件的相关信息:<_io.TextIOWrappername=‘exam.txt’mode=‘r’encoding=‘cp936’>。若想要输出文件的内容,需要把文件的内容读入,如f1=f.read()。本题选择C选项。

2.Cforsin'HelloWorld”:将字符串HelloWorld中的字符依次赋给变量s,之后进行if判断,如果s=\n'W”,则continue,执行下一个循环,不执行print(s,end='”),否则执行print(s,end\n=''),所以最后输出的结果是Helloorld。本题选择C选项。

3.CPython中复数类型的虚数部分的后缀可以为j或者J;复数的实部可以单独存在,但是虚部不可以单独存在;复数由实部和虚部构成,可以使用z.\nreal和z.imag分别获得它的实部和虚部。本题选择C选项。

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

5.D对字符串中某个子串或区间的检索称为切片。切片的使用方式如下:\n<字符串或字符串变量>[N:M]\n切片获取字符串从N到M(不包含M)的子字符串,其中N和M为字符串的索引序号,可以混合使用正向递增序号和反向递减序号。切片要求N和M都在字符串的索引区间,如果N大于等于M,则返回空字符串。如果N缺失,则默认将N设为0;如果M缺失,则默认表示到字符串结尾。\n题干中s[1:5]=’2345’,s[0:3]=’123’,s[一10:一5]=’12345’,s[0:4]=’1234’。

6.APython语言使用保留字try和except进行异常处理,基本的语法格式如下:\ntry:\n<语句块1>\nexcept:\n<语句块2>\n“语句块1”是正常执行的程序内容,当执行这个语句块发生异常时,则执行except保留字后面的“语句块2”,一个try代码块可以对应多个处理异常的except代码块。

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

8.A软件测试的目的是为了发现错误而执行程序,并不涉及改正错误,所以选项A错误。程序调试的基本步骤有错误定位、修改设计及代码,以排除错误、进行回归测试,防止引进新的错误。程序调试通常称为Debug,即排错。软件测试的基本准则:所有测试都应追溯到需求、严格执行测试计划以排除测试的随意性、充分注意测试中的群集现象、程序员应避免检查自己的程序、穷举测试不可能、妥善保存测试计划等文件。本题选择A选项。

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

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

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

12.APython使用保留字try和except进行异常处理,基本的语法如下。try:\t<语句块1>except:\t<语句块2>“语句块1”是正常执行的程序内容,当执行这个语句块发生异常时,则执行except保留字后面的“语句块2”。一个try代码块可以对应多个处理异常的except代码块。本题选择A选项。

13.Awhile循环条件一直为True,即无限循环,只要“inp//3”条件为真,进入循环,则执行break语句,即可跳出while循环。2//3的值为0,条件为假,不执行break语句,无法结束程序执行。

14.A

15.D本题考查的是字符串输出格式化知识点,其中“{:*^13},,表示输出的字符串长度为13,居中对齐,空白处用“*”填充。最后输出的是****LOVES****,D项正确。

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

17.D浮点数3.0和整数3具有相同的值,硬件执行单元、计算机指令处理方法和数据类型均不相同。本题选择D选项。

18.B赋值运算的一般形式:变量=表达式,左边只能是变量。A选项是连续赋值,C选项是序列赋值,D选项可以写为x=x+y。本题选择B选项。

19.Bappend()是向列表元素的结尾增加元素。本题选择B选项。

20.AA。【解析】结构化程序设计方法的主要原则可以概括为自顶向下、逐步求精、模块化、限制使用goto语句等。

21.Brange()函数的语法格式为range(\nstart,stop,step),作用是生成一个从start参数的值开始,到stop参数的值结束的数字序列(注意不包含参数stop)\n,step是步进参数。一般默认start为0,步进step=1,如range(5),生成0、1、2、3、4。list()生成列表,所以最后列表IS=\n[0,1,2,3,4]。本题选择B选项。

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

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

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

25.A通常,将软件产品从提出、实现、使用维护到停止使用退役的过程称为软件生命周期。也就是说,软件产品从考虑其概念开始,到该软件产品不能使用为止的整个时期都属于软件生命周期。

26.D映射类型是“键-值”数据项的组合,每个元素是一个键值对,即元素是(key,\nvalue),元素之间是无序的。键值对是一种二元关系,源于属性和值的映射关系。str、tuple及list都是序列类型,diet是映射类型。本题选择D选项。

27.B

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

29.D文件是存储在辅助存储器上的一组数据序列,可以包含任何数据内容,A选项正确。可以使用open()打开文件,用close()关闭文件,B选项正确。在Python中,文件读取方法如下(f代表文件变量)。f.read():从文件中读入整个文件内容。f.readline():从文件中读入一行内容。f.readlineS():从文件中读入所有行,以每行为元素形成一个列表。f.seek():改变当前文件操作指针的位置。C选项正确。本题选择D选项。

30.B在Python语言中,字典是存储可变数量键值对的数据结构,键和值可以是任意数据类型,通过键索引值,并可以通过键修改值。因此,可以直接利用键值对关系索引元素。索引模式:<值>=<字典变量>[<键>]。故能够正确索引字典并输出数字2的语句是pnnt(d[’cake’]),B项正确。

31.Y

32.N

33.Y

34.Y

35.N

36.Y

37.Y

38.Y

39.N

40.Y

41.{1,2}

42.4

43.False

44.[2]

45.[4,5]

46.1,2,3

47.'C'

48.r、R

49.[iforiinrange(100)ifi%13==0]

50.'1'

51.importrandom\r\nbrandlist=[’三星’,’苹果’,’vivo’,’OPPO’,’魅族’]\r\nrandom.seed(0)\r\nname=brandlist[random.randint(0,4)]

print(name)题目要求随机输出列表中的一个手机名称,“随机”需要用到Python的标准库random,random.seed(0)的作用是设置初始化随机数种子,设置种子的好处就是可以重复再现相同的随机数序列。输出列表中的元素可以使用索引的方法,分析代码可知,列表中共有5个元素,所以元素的序号由0到4,需要用到random库的randint()方法。random.randint(a,b)的作用是产生一个[a,b]之间的随机整数。

52.importjiebas=input(”请输入一个字符串”)n=len(s)m=len(jieba.lcut(s)print("中文字符数为{},中文词语数为{}。”.format(n,m)本题要求使用jieba中文分词库,统计输入的字符串的长度以及中文词语数。给定的字符串s中仅包含中文字符和中文标点符号,因此可以直接使用len()函数统计字符数量,第1空填len(s)。再使用jieba库的lcut(s)方法,返回一个以中文词语为元素的列表类型,使用len()获得列表的长度,即中文词语数量。因此第2\r\n空填len(jieba.lcut(s))

53.(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("小女孩.

温馨提示

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

评论

0/150

提交评论