黑龙江省鹤岗市全国计算机等级考试Python语言程序设计真题(含答案)_第1页
黑龙江省鹤岗市全国计算机等级考试Python语言程序设计真题(含答案)_第2页
黑龙江省鹤岗市全国计算机等级考试Python语言程序设计真题(含答案)_第3页
黑龙江省鹤岗市全国计算机等级考试Python语言程序设计真题(含答案)_第4页
黑龙江省鹤岗市全国计算机等级考试Python语言程序设计真题(含答案)_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

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

文档简介

黑龙江省鹤岗市全国计算机等级考试Python语言程序设计真题(含答案)学校:________班级:________姓名:________考号:________

一、单选题(30题)1.下面的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])

2.面向对象方法中,继承是指()。

A.一组对象所具有的相似性质B.一个对象具有另一个对象的性质C.各对象之间的共同性质D.类之间共享属性和操作的机制

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

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

4.数据库应用系统中的核心问题是()。

A.数据库的设计B.数据库系统的设计C.数据库的维护D.数据库管理员的培训

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

A.passB.useC.withD.None

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

7.Python中用来表示代码块所属关系的语法是()。

A.花括号B.圆括号C.缩进D.冒号

8.算法的空间复杂度是指()。

A.算法在执行过程中所需要的计算机存储空间

B.算法所处理的数据量

C.算法程序中的语句或指令条数

D.算法在执行过程中所需要的临时工作单元数

9.在Python中,IPO模式不包括()。

A.Program(程序)B.Input(输入)C.Process(处理)D.Output(输出)

10.用Pylnstaller工具把Python源文件打包成一个独立的可执行文件,使用的参数是()。

A.-LB.-C.-FD.-i

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

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

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

A.scrapyB.NumPyC.pandasD.matplotlib

13.结构化程序设计的基本原则不包括A.多态性B.自顶向下C.模块化D.逐步求精

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

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

15.用Pylnstaller工具打包Python源文件时,-F参数的含义是()。

A.指定所需要的第三方库路径

B.在dist文件夹中只生成独立的打包文件

C.指定生成打包文件的目录

D.删除生成的临时文件

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

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

17.以下程序的输出结果是()。a,b,c='I’,chr(64),"you"s=a+b+cprint(s)

A.I@youB.IyouC.I4youD.Ichr(64)you

18.下面哪一种定义是类的私有成员?()

A._xxB._xx_C._xxxD.xxx

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

A.tryB.elseC.forD.continue

20.数据库管理系统能实现对数据库中数据的查询、插入、修改和删除,这类功能称为()。

A.数据控制功能B.数据定义功能C.数据存储功能D.数据操纵功能

21.在Python中,可以作为源文件扩展名的是()。

A..pngB..pdfC..pyD..ppt

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

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

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

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

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

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

A.只读模式“r”B.覆盖写模式“w”C.追加写模式“a”D.创建写模式“n”

24.下面代码的输出结果是()。foriin”Goaheadbravely!”:ifi==”b”:breakelse:print(i,end=””)

A.Goaheadrarely!B.bravely!C.Goaheadbravely!D.Goahead

25.数据库管理系统能实现对数据库中数据的查询、插入、修改及删除,这类功能称为()。

A.数据控制功能B.数据定义功能C.数据存储功能D.数据操纵功能

26.下面代码的意义是()。>>>car=’BWM’>>>Id(car)

A.查看变量所占的位数B.转换成布尔值C.查看变量在内存中的地址D.把变量中的元素随机排列

27.以下对Python文件处理的描述中,错误的是()。

A.当文件以文本方式打开时,读/写按照字节流方式

B.Python能够以文本和二进制两种方式处理文件

C.Python通过解释器内置的open()函数打开一个文件

D.文件使用结束后可以用close()方法关闭,释放文件的使用授权

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

A.strB.tupleC.listD.diet

29.在Python中,用于数据分析的第三方库是()。

A.pandasB.PILC.DjangoD.Flask

30.下面代码的输出结果是()。foriinrange(3):forjin”dream”:ifj=="e":continueprint(j,end="")

A.dramdramdramB.drdrdrC.dreamdreamdreamD.dream

二、判断题(10题)31.定义类时,在一个方法前面使用@staticmethod进行休息,则该方法属于静态方法。

A.是B.否

32.Python标准库os中的方法listdir()返回包含指定路径中所有文件和文件夹名称的列表。

A.是B.否

33.加法运算符可以用来连接字符串并生成新字符串。

A.是B.否

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

A.是B.否

35.程序中异常处理结构在大多数情况下是没必要的。

A.是B.否

36.全局变量会增加不同函数之间的隐式耦合度,从而降低代码可读性,因此应尽量避免过多使用全局变量。

A.是B.否

37.无法配置IIS来支持Python程序的运行。

A.是B.否

38.带有else子句的异常处理结构,如果不发生异常则执行else子句中的代码。A.是B.否

39.在异常处理结构中,不论是否发生异常,finally子句中的代码总是会执行的。

A.是B.否

40.已知x=3,那么赋值语句x='abcedfg'是无法正常执行的。

A.是B.否

三、填空题(10题)41.已知x,y=3,5,那么执行x,y=y,x之后,x的值为__________。

42.表达式type({3})的值为__________。

43.表达式str([1,2,3])的值为__________________。

44.已知列表x=list(range(5)),那么执行语句x.remove(3)之后,表达式x.index(4)的值为________。

45.已知vec=[[1,2],[3,4]],则表达式[colforrowinvecforcolinrow]的值为__________________________。

46.为了提高Python代码运行速度和进行适当的保密,可以将Python程序文件编译为扩展名__________的文件。

47.切片操作list(range(6))[::2]执行结果为________________。

48.表达式int('11111',2)的值为__________。

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

50.表达式chr(ord('a')-32)的值为___________。

四、操作题(3题)51.考生文件夹下存在一个文件PY101.py,请写代码替换横线,不修改其他代码,实现以下功能:

键盘输入正整数n,按要求把n输出到屏幕,格式要求:宽度为25个字符,等号字符(=)填充,右对齐,带千位分隔符。如果输入正整数超过25位,则按照真实长度输出。

例如:键盘输入正整数n为1234,屏幕输出===================1,234

试题程序:

#请完善如下代码

s=input()

print(”{________(1)_________}”.format(________(2)_________))

52.考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代码,实现以下功能:使用循环输出从1到50之间的奇数。

试题程序:

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

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

ifcount%2==0:

print(count,end=”,”)

53.考生文件夹下存在两个Python源文件,分别对应两个问题,请按照文件内说明修改代码,实现以下功能:马和骆驼都是哺乳动物的一种,它们都有四只脚,体型也差不多大,作为现实世界中的一个类生物,我们将在这里为它们编写属于它们各自的类。

问题1:在PY301一1.py文件中修改代码,代码中编写了一个马(Home)的类,在这个类中马有三个属性,分别是年龄(age)、品种(category)和性别(gender)。在每创建一个马的对象时,我们需要为其指定它的年龄、品种和性别。该类中还编写一个get_deseriptive()方法,能够打印出马的这三个属性。每一匹马都有自己的最快速度,所以类中有一个speed()方法,可以打印出马的最快速度值。并且在马的生命过程中,它的速度一直在变,类中还有一个update_speed()方法用来更新马当前的最快速度值。

例如:一匹12岁的阿拉伯公马,在草原上奔跑的速度为50km/h,要求调用get_descriptive()和update_speed()方法,将输出的结果保存在考生文件夹下,文件命名为“PY301—1.txt”。

试题程序:

#以下代码为提示框架

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

#请在_____处使用一行代码替换

#注意:提示框架代码可以任意修改,以完成程序功能为准

fo=open(“PY301—1.txt”,”W”)______Horse():

def______(self,category,gender,age):

defget_descriptive(self):

info=’thishorseis’+_____+’yearsold,’+’itscategoryis’+_+’,’+’itsfenderis’+_______+’.’

fo.write(info+“\n”)

defupdate_speed(self,new_speed):________

fo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)

fo.close()

问题2:在PY301—2.py文件中修改代码,该代码编写了一个骆驼类(Camel),这个类继承自上一个文件中的马类但是不对马类中的属性和方法进行操作。因为每个骆驼的驼峰数量不一致,我们在类中添加驼峰数目这个新属性,并且添加一个打印出骆驼驼峰数量的方法。

例如:一个双峰驼20岁的母骆驼以每小时40千米的速度奔跑在沙漠中,调用父类的方法和Camel类本身的方法将结果保存在“PY301—2.txt”中,保存在考生文件夹下。试题程序:#以下代码为提示框架#请在…处使用一行或多行代码替换

#请在________处使用一行代码替换

#注意:提示框架代码可以任意修改,以完成程序功能为准

fo=open(”PY301—2.txt”,”W”)

________Horse():

def_______(self,category,gender,age):

defget_descriptive(self):

info=’thishorseis’+________+’yearsold,’+’itscategoryis’+_______+’,’+’itsfendemis’+_______+’.’

fo.write(info+"\n")

defupdate_speed(self,new_speed):

________fo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.\n”)clasSCamel(Horse):

def__init__(self,category,gender,age):

______.__init__(category,gender,age)

self.hump_size=2defdescribe_hump_size(self):

fo.write(’thiscamelhas’+str(self.hump_size)+’hump.’)

fo.close()

参考答案

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

2.D继承是面向对象的方法的一个主要特征,是使用已有的类的定义作为基础建立新类的定义技术。广义的说,继承是指能够直接获得已有的性质和特征,而不必重复定义它们,所以说继承是指类之间共享属性和操作的机制。

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

4.A数据库应用系统中的核心问题是数据库的设计。本题选择A选项。

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.B

7.C在Python中,缩进指每行语句开始前的空白区域,用来表示Python程序间的包含和层次关系。本题选择C选项。

8.A算法的空间复杂度是指算法在执行过程中所需要的内存空间。所以选择A项。

9.A程序设计IPO模式内容如下。I:Input(输入),程序的输入。程序的输入包括文件输入、网络输入、控制台输入、随机数据输入、程序内部参数输入等。输入是一个程序的开始。P:Process(处理),程序的主要逻辑。程序对输入进行处理,输出产生结果。处理的方法也叫算法,是程序最重要的部分。可以说,算法是一个程序的主要灵魂。O:Output(输出),程序的输出。程序的输出包括屏幕显示输出、文件输出、网络输出、操作系统内部变量输出等。输出是一个程序展示运算成果的方式。本题选择A选项。

10.CPylnstaller工具没有-L参数;-D是默认值,生成dlst目录;-F是指在dlst文件夹中只生成独立的打包文件;-i是指定打包程序使用的图标文件。本题选择C选项。

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

12.A在Python中,用于数据分析的第三方库有NumPy、scipy、pandas及matplotlib。Scrapy库是网络爬虫方向的第三方库。本题选择A选项。

13.A结构化程序设计方法的主要原则可以概括为:自顶向下,逐步求精,模块化和限制使用GOTO语句,其中不包括多态性。

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

15.B-F是指在dlst文件夹中只生成独立的打包文件(即.exe文件),所有的第三方依赖、资源和代码均打包到此文件中。本题选择B选项。

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

17.A程序中,chr(64)输出的是字符@,之后用“+”连接字符串,最后输出I@you。本题选择A选项。

18.C在Python中,类的定义中以一个下划线开头是成员的保护成员,以两个下划线开头和结束的成员是系统定义的特殊成员,以两个或多个下划线开头但不以两个或多个下划线结束的成员是私有成员,所以选C。

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

20.D数据定义功能:负责数据的模式定义与数据的物理存取构建;数据操纵功能:负责数据的操纵,包括查询与增、删、改等操作;数据控制功能:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。本题选D选项。

21.C在Python中,源文件的扩展名一般使用.py。本题选择C选项。

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

23.D文件打开模式如下。“V”:只读模式,如果文件不存在,返回异常FileNotFmindError,默认值。“X”:创建写模式,文件不存在则创建,存在则返回异常FileExlstsError。“w”:覆盖写模式,文件不存在则创建,存在则完全覆盖原文件。“a”:追加写模式,文件不存在则创建,存在则在原文件最后追加内容。文件打开模式中没有“n”。本题选择D选项。

24.Dfor循环遍历字符串,当变量i赋值为b时,break跳出本层循环,即后面的字符不再遍历,当值不为b时就将其输出,结果为Goahead。

25.D数据定义功能:负责数据的模式定义与数据的物理存取构建。数据操纵功能:负责数据的操纵,包括查询与增、删、改等操作。数据控制功能:负责数据完整性、安全性的定义与检查以及并发控制、故障恢复等功能。本题选择D选项。

26.Cid(x)是Python中的内置函数,用来查看变量在内存中的地址。

27.A文件包括文本文件和二进制文件两种类型。Python对文本文件和二进制文件采用统一的操作步骤,即“打开-操作-关闭”,B选项正确。采用文本方式读入文件,文件经过编码形成字符串,输出有含义的字符;采用二进制方式打开文件,文件被解析为字节流,A选项错误。Python通过open()函数打开一个文件,并返回一个操作这个文件的变量,语法格式为<变置名>=open(<文件路径及文件名>,<打开模式>\n),C选项正确。文件使用结束后要用clooe()方法关闭,释放文件的使用授权,语法格式为<变置名>dose()\n,D选项正确。本题选择A选项。

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

29.A用于数据分析的第三方库是pandas,PIL是Python在图像处理方面的第三方库,Django和flask库是Python在Web开发方向的第三方库。本题选择A选项。

30.Acontinue语句只结束本次循环,不终止整个循环的执行,而break语句具备结束循环的能力。本题外层循环用来计数,内层循环用来遍历字符串,当满足判断条件时,就会结束本次循环进入下一循环,字符串遍历完成之后,外层循环进入下一循环。本题选择A选项。

31.Y

32.Y

33.Y

34.Y

35.N

36.Y

37.N

38.Y

39.Y

40.N

41.5

42.set

43.'[1,2,3]'

44.3

45.[1,2,3,4]

46.pyc

47.[0,2,4]

48.31

49.9

50.'A'

51.s=input()\r\nprint(”{:=>25}”.format(eval(s)))该题目主要考查Python字符串的格式化方法。Python语言推荐使用.format()格式化方法,其使用方式如下:\r\n

<模板字符串>.format(<逗号分隔的参数>)\r\n

其中,模板字符串是一个由字符串和槽组成的字符串,用来控制字符串和变量的显示效果。槽用大括号({})表示,对应format()方法中逗号分隔的参数。如果模板字符串中有多个槽,可以通过format()参数的序号在模板字符串槽中指定参数的使用,参数从0开始编号。例如:\r\n”{0}日:学而不思则罔,思而不学{1}。”.format(”孔子”,”则殆”)\r\n

其结果为:’孔子日:学而不思则罔,思而不学则殆。’\r\n

format()方法的槽除了包括参数序号,还可以包括格式控制信息,语法格式如下:\r\n

{<参数序号>:<格式控制标记>}\r\n其中,格式控制标记包括:<填充><对齐><宽度><,><.精度><类型>6个字段,由引导符号(:)作为引导标记,这些字段都是可选的,可以组合使用。\r\n

<填充>:指用于填充的单个字符。\r\n

<对齐>:分别使用<、>和^三个符号表示左对齐、右对齐和居中对齐。\r\n<宽度>:当前槽的设定输出字符宽度。\r\n<,>:用于显示数字类型的千位分隔符。\r\n

<.精度>:由小数点(.)开头,对于浮点数,精度表示小数部分输出的有效位数;对于字符串,精度表示输出的最大长度。\r\n

<类型>:表示输出整数和浮点数类型的格式规则。\r\n

本题格式要求为:宽度为25个字符,等号字符(=)填充,右对齐,带千位分隔符。则模板字符串为:{:=>25,}。\r\n

由于题目要求带千位分隔符,所以模板字符串对应的:format()方法中的参数必须是数字类型,但无论用户输入的是字符还是数字,input()函数统一按照字符串类型输出,这时就需要先使用eval()函数去掉字符串最外侧的引号,然后再参与运算。

52.count=0\r\n

whilecount<50:\r\n

count+=1\r\n

ifcount%2==0:\r\n

continue\r\n

print(count,end=”,”)判断一个数是否为奇数,即判断这个数能否被2整除,可以被整除则为偶数,结束本次循环,使用continue语句;不可以被整除则为奇数,输出该数。while循环不具有自动计数的功能,所以需要定义一个变量,初始值为0,每经过一次循环,变量加1;当变量超过50时,停止循环。

53.(1)fo=open(”PY301一1.txt”,”w”)\r\nclassHorse():

def==init==(self,category,gender,age):\r\n

self.category=category\r\n

self.gender=gender\r\n

self.age=age\r\n

self.horse_speed=0\r\n

defget_descriptive(self):\r\n

info=’thishorseis’+str(self.age)+’yearsold,’+’itscategoryis’+self.category+’,’+'itsfenderis'+self.gender+’.’\r\n

fo.write(info+”\n”)\r\ndefupdate_speed(self,new_speed):\r\n

self.horse_speed=new_speed\r\n

fo.write(’thespeedofthishorseis’+str(self.horse_speed)+”km/h.”)\r\nhorse=Horse("Arab","male","12")\r\nhorse.get_deseriptive()\r\nhorse.update_speed(50)\r\nfo.close()\r\n(2)fo=open(”PY301~2.txt”,”w”)\r\nclassHorse():\r\n

def__init__(self,category,gender,age):\r\n

self.cat

温馨提示

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

评论

0/150

提交评论