四川省宜宾市全国计算机等级考试Python语言程序设计专项练习(含答案)_第1页
四川省宜宾市全国计算机等级考试Python语言程序设计专项练习(含答案)_第2页
四川省宜宾市全国计算机等级考试Python语言程序设计专项练习(含答案)_第3页
四川省宜宾市全国计算机等级考试Python语言程序设计专项练习(含答案)_第4页
四川省宜宾市全国计算机等级考试Python语言程序设计专项练习(含答案)_第5页
已阅读5页,还剩14页未读 继续免费阅读

下载本文档

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

文档简介

四川省宜宾市全国计算机等级考试Python语言程序设计专项练习(含答案)学校:________班级:________姓名:________考号:________

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

2.关于以下代码的描述中,正确的是()。deffact(n):s=1Foriinrange(1,n+1):s*=ireturns

A.代码中n是可选参数

B.faCt(n)函数功能为求n的阶乘

C.s是全局变量

D.mnge()函数的范围是[1,n+1]

3.下面代码的输出结果是()。words=”helloPythonworld!”f=lambdax:len(x)foriinwords.split():print(f(i),end=””)

A.555B.566C.666D.111111

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

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

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

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

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

5.下面关于Python中匿名函数lambda的说法错误的是()。

A.lambda拥有自己的命名空间,不能访问自己参数列表之外或全局命名空间的参数

B.lambda的主体是一个表达式,而不是一个代码块

C.使用lambda省去了定义函数的过程,代码更加精简

D.f=lambdax:x*x,匿名函数中冒号前的x表示函数名称

6.以下关于Python字符编码的描述中,正确的是()。

A.Python字符编码使用ASCII值存储

B.chr(x)和ord(x)函数用于在单字符和Unicode值之间进行转换

C.print(chr('a’))输出97

D.print(ord(65))输出A

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

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

8.以下代码的输出结果是()。t=10.5defabove_zero(t):returnt>0

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

9.以下程序的输出结果是()。forcin’PythonNCRE’:ifc==’N’:breakprint?

A.无输出B.PythonC.PythoD.PythonCRE

10.跳出所处的最近层循环的是()

A.breakB.continuesC.continueD.Pass

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

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

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

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

D.['七月在线']

E.NoneType

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

A.可行性分析报告B.软件需求规格说明书C.概要设计说明书D.集成测试计划

13.表达式3+5%6*2//8的值是()。

A.5B.4C.6D.7

14.float('inf')<float('inf')+1执行后的结果A.A.TrueB.False

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

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

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

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

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

16.想查看BIFlen的文档信息,输入以下命令()

A.helplenB.help--lenC.lenhelpD.help(len)

17.数据字典(DD)的作用是()。

A.定义流程图中各个成份的具体含义

B.定义数据流图中各个成份的具体含义

C.定义系统结构图中各个成份的具体含义

D.定义功能结构图中各个成份的具体含义

18.下面关于Python中继承的说法错误的是()。

A.创建子类实例时,Python首先需要完成的任务是给父类的所有属性赋值

B.Python中,super()是一个特殊函数,帮助Python将父类和子类关联起来

C.函数super()只需要一个实参,即子类名

D.对于父类的方法,可对其进行重写,即在子类中定义一个这样的方法,它要与重写的父类名方法同名

19.以下关于Python循环结构的描述中,错误的是()。

A.while循环使用关键字continue结束本次循环

B.while循环可以使用保留字break和continue

C.while循环也叫遍历循环,用来遍历序列中的元素,默认提取每个元素并执行一次循环体

D.while循环使用pass语句,则什么事也不做,只是空占位语句

20.以下代码的输出结果是()。defHello(famlyName,age):ifage>50:print("您好!”+famlyName+”奶奶”)elifage>40:print(“您好!”+famlyName+”阿姨”)elifage>30:print(”您好!”+famlyName+”姐姐”)else:print(“您好!”+”小”+famlyname)Hello(age=43,famlyName="赵")

A.您好!赵奶奶B.您好!赵阿姨C.您好!赵姐姐D.函数调用出错

21.如果文件a.txt在目录’C:\\A’下,执行以下代码会发生什么操作?()importosos.rmdir(r'C:\\A’)

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

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

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

D.OSError

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

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

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

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

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

23.下面描述正确的是()。

A.软件测试是软件调试的一部分

B.软件测试是证明软件正确的方法

C.软件测试的目的是发现程序中的错误

D.软件测试是保障软件质量的唯一方法

24.在Python中,关于数据类型的描述错误的是()。

A.整数的书写格式支持十进制、二进制、八进制和十六进制

B.如果想知道参数的数据类型,那么可以使用type()函数获得

C.整数、浮点数、复数和布尔值都是Python的基本数据类型

D.浮点数是带有小数的数字,它存在范围的限制,如果计算结果超出上限和下限,则不会报错,但会有warning的警告

25.以下代码的输出结果是()。x=12+3*((5*8)一14)//6print(x)

A.25.0B.65C.25D.24

26.软件详细设计产生的图如下:

该图是()。

A.N-S图B.PADC.程序流程图D.E-R图

27.以下程序的输出结果是()。foriin”miss":Forjinrange(3):print(i,end=”)ifi=="i”:breakA.missmissmissB.mmmissssssC.mmmiiissssssD.mmmssssss

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

A.scrapyB.numpyC.lmndasD.matplotlib

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

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

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

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

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

30.以下代码的输出结果是()。whileTrue:guess=eval(input())ifguess==0x452//2:breakprint(guess)

A.0x452B.breakC.553D.”0x452//2”

二、判断题(10题)31.对于生成器对象x=(3foriinrange(5)),连续两次执行list(x)的结果是一样的。

A.是B.否

32.表达式{1,2}*2的值为{1,2,1,2}。

A.是B.否

33.Python集合支持双向索引。

A.是B.否

34.在Python中0oa1是合法的八进制数字表示形式。

A.是B.否

35.对文件进行读写操作之后必须显式关闭文件以确保所有内容都得到保存。

A.是B.否

36.扩展库os中的方法remove()可以删除带有只读属性的文件。

A.是B.否

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

A.是B.否

38.执行语句frommathimportsin之后,可以直接使用sin()函数,例如sin(3)。A.是B.否

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

A.是B.否

40.在Python中定义函数时不需要声明函数参数的类型。

A.是B.否

三、填空题(10题)41.表达式1234%1000//100的值为___________。

42.Python安装扩展库常用的是_______工具。

43.表达式{1,2,3}|{3,4,5}的值为_____________________。

44.已知x是一个列表对象,那么执行语句y=x[:]之后表达式id(x)==id(y)的值为___________。

45.表达式{1,2,3,4,5}^{4,5,6,7}的值为_________________________。

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

47.表达式isinstance(4j,(int,float,complex))的值为_____________。

48.语句x,y,z=[1,2,3]执行后,变量y的值为__________。

49.表达式':'.join('abcdefg'.split('cd'))的值为______________。

50.使用pip工具查看当前已安装的Python扩展库(不含版本号)的完整命令是__________。

四、操作题(3题)51.考生文件夹下存在一个文件“PY201.py”,该文件是本题目的代码提示框架,其中代码可以任意修改。请在该文件中编写代码,以实现如下功能。使用turtle库的fd()函数和right()函数绘制一个边长为100像素的正六边形,再用circle()函数绘制半径为60像素的红色圆内接正六边形,效果如下所示。

试题程序:#以下代码为提示框架#请在_____处使用一行代码替换#注意:提示框架的代码可以任意修改,以完成程序功能为准fromturtleimport*pensize(5)foriinrange(6):fd(_____(1)_____)right

(_____(2)_____)color("red")circle(60,_____(3)_____)

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

53.考生文件夹下存在一个文件“PY201.Py”,请写代码替换横线,不修改其他代码,实现以下功能。使用turtle库的turtle.circle()函数、turtle.seth()函数及turtle.left()函数绘制一个四瓣花图形,效果如下所示。

试题程序:#请在_____处使用一行代码或表达式替换#注意:请不要修改其他已给出代码importturtleforiinrange(_____(1)_____):turtle.seth(_____(2)_____)turtle.circle(50,90)turtle.seth(_____(3)_____)turtle.circle(50,90)turtle.(4)

参考答案

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

2.B函数定义时的语法格式如下:def<函数名>(<非可选参数列表>,<可选参数>=<默认值>):〈函数体〉return<返回值列表〉可选参数一般都放置在非可选参数的后面。本题代码中,n为非可选参数,fact(n)函数的功能为求n的阶乘。s在函数内部定义,为局部变量。根据range()函数的定义,range(l,n\n+l)的范围是[l,n],不包含n+1。本题选择B选项。

3.B该代码是一个匿名函数和split()方法的结合使用,split()方法把字符串words以空格分隔,返回的是列表类型。通过for循环把列表元素赋值给变量i,然后调用函数f计算每个单词的长度,所以输出的是566。

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

5.Dlambda冒号前的x代表的是函数的参数。本题选择D选项。

6.B在Python中,字符编码以Unicode值存储。chr(x)和ord(x)函数用于在单字符和Unicode值之间进行转换。chr(x)函数返回Unicode值对应的字符,ord(x)函数返回单字符x对应的Unicode值,如chr(1010)返回’c’,ord(”和”)返回21644。因此,选项C、D错误。本题选择B选项。

7.APython中组合数据类型包括元组、列表、字典和集合等。

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

9.A本题中,break语句出现在print语句之前,当if的条件为True时,执行break语句,跳出for循环,不再执行循环体中break后面的语句,故无输出。

10.A

11.B

12.BA选项错误,可行性分析阶段产生可行性分析报告。C选项错误,概要设计说明书是总体设计阶段产生的文档。D选项错误,集成测试计划是在概要设计阶段编写的文档。B选项正确,软件需求规格说明书是后续工作如设计、编码等需要的重要参考文档。本题选择B选项。

13.B根据运算符的优先级,运算顺序为:5%6=5,5*2=10,10//8=1,3+1=4。故答案为B项。

14.B

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

16.D

17.B数据字典(DataDictionary,DD)是对数据流图中所有元素的精确、严格的定义和解释,是一个有组织的列表,使得用户和系统分析员对于输入、输出、存储成分和中间计件结果有共同的理解,是结构化分析的核心。

18.C函数super()需要两个实参,分别是子类名和对象self,为了帮助Python将父类和子类关联起来,这些实参必不可少,所以C项错误。

19.CPython中循环包括两种:遍历循环和无限循环。遍历循环使用关键字for依次提取遍历结构元素进行处理;无限循环使用关键字while根据判断条件执行程序。循环结构有两个辅助循环控制关键字:break和continue。break用来跳出最内层for或while循环,脱离该循环后程序从循环后的代码继续执行。continue用来结束当前当次循环,即跳出循环体中下面尚未执行的语句,但跳不出当前循环。pass:什么事也不做,只是空占位语句,并且是无运算的占位语句,当语法需要语句并且还没有任何使用的语句可写时,就可以使用它。它通常用于为复合语句编写一个空的主体。如果写无限循环,每次迭代什么也不做,就写pass。pass是有意义的,如忽略try语句所捕获的异常,以及定义带属性的空类对象,而该类实现的对象行为就像其他语言的结构和记录。pass有时指“以后会填上”,只是暂时用于填充函数主体而已,无法保持函数体为空而不产生语法错误,因此,可以使用pass来替代。两者的区别:continue语句只结束本次循环,不终止整个循环的执行,而break具备结束循环的能力。本题选择C选项。

20.B将实参age=43、famlyName=\n”赵”分别赋给形参age和famlyName,之后进入多分支结构进行判断。因为40

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

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

23.C软件测试的目的是发现程序中的错误。调试是作为成功测试的后果而出现的步骤,也就是说,调试是在测试发现错误之后排除错误的过程。软件调试的任务是诊断和改正程序中的错误。

24.D浮点数的取值范围为-10308~10308,浮点数之间的区分精度约为2.22×10-16。对除高精度科学计算外的绝大部分运算来说,浮点数类型的数值范围和小数精度足够“可靠”,一般认为浮点数类型没有范围限制。如果计算结果超出上限和下限会产生溢出错误。本题选择D选项。

25.C在Python中算术运算符”//”来表示整数除法,返回不大于结果的一个最大的整数,而”/”则单纯的表示浮点数除法,返回浮点结果。所以先计算5*8=40,40一14=26,26*3=78,78//6=13,12+13=25。本题选择C选项。

26.CN-S图提出了用方框图来代替传统的程序流程图,所以A选项不对。问题分析图(Prob-lemAnalysisDiagram,\nPAD)\n是继承程序流程图和方框图之后提出的又一种主要用于描述软件详细设计的图形,所以B选项不对。E-R图是数据库中的用于表示E-R模型的图示工具,所以D选项不对。根据图中所示的表示方法可知,是进行软件详细设计时使用的程序流程图。本题选择C选项。

27.B外层for循环依次将字符串miss中的字符赋给变量i,内层for控制循环3次,注意是先执行Print()再判断if条件,输出第一个i后,碰到if判断条件,当i\r\n==”i”时退出内层循环,所以结果为mrmnis-sssss。本题选择B选项。

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

29.CPython中复数类型的虚数部分的后缀可以为j或者J;复数的实部可以单独存在,但是虚部不可以单独存在;复数有实部和虚部构成,可以使用z.real和z.imag分别获得它的实部和虚部。

30.C该程序最外层是while循环,while循环的条件是True,由此可知while内的语句会无限循环。input()函数是用来获取用户从键盘输入的内容并以字符串类型返回。eval()函数是把字符串转换成Python可用的语言。if语句的作用是来控制程序是否继续循环,判断条件中0x452是十六进制数,对2整除的结果是553,如果用户输入的数据是553,则将结果输出并终止循环;如果输入其他数据,程序会一直要求用户输入直到输入正确的数据才会终止循环。本题选C选项。

31.N

32.N

33.N

34.N

35.Y

36.N

37.N

38.Y

39.Y

40.Y

41.2

42.pip

43.{1,2,3,4,5}

44.False

45.{1,2,3,6,7}

46.[(3,6)]

47.True

48.2

49.'ab:efg'

50.piplist

51.fr

温馨提示

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

评论

0/150

提交评论