国家二级(Python)机试模拟试卷70_第1页
国家二级(Python)机试模拟试卷70_第2页
国家二级(Python)机试模拟试卷70_第3页
国家二级(Python)机试模拟试卷70_第4页
国家二级(Python)机试模拟试卷70_第5页
已阅读5页,还剩10页未读 继续免费阅读

下载本文档

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

文档简介

国家二级(Python)机试模拟试卷70

一、单项选择题(本题共40题,每题1.0分,共40

分。)

1、系统在创建一个进程时需要调用()。

A、阻塞进程原语

B、创建进程原语

C、唤醒进程原语

D、撤销进程原语

标准答案:B

知识点解析:进程借助创建原语实现创建一个新进程。系统在创建一个进程时需要

调用创建进程原语。本题答案为B选项。

2、下列叙述中错误的是()。

A、虚拟存储器的空间大小就是实际外存的大小

B、虚拟存储器的空间大小取决于计算机的访存能力

C、虚拟存储器使存储系统既具有相当于外存的容量又有接近于主存的访问速度

D、实际物理存储空间可以小于虚拟地址空间

标准答案:A

知识点解析:虚拟存储器是对主存的逻辑扩展,虚拟存储器的空间大小取决于计算

机的访存能力而不是实际外存的大小。本题答案为A选项。

3、设表的长度为n。下列查找算法中,在最坏情况下,比较次数最少的是()。

A、顺序查找

B、寻找最大项

C、寻找最小项

D、有序表的二分查找

标准答案:D

知识点解析:最坏情况下比较次数:有序表的二分查找为施2n,而序查找为n,寻

找最大项为n-l,寻找最小项为n—l。故比较次数最少的是有序表的二分查找。

本题答案为D选项。

4、设循环队列的存储空间为Q(l:100),初始状态为空。现经过一系列正常操作

后,front=49,则循环队列中的元素个数为()。

A、49

R、51

C、50

D、不确定

标准答案:D

知识点解析:循环队列是队列的一种顺序存储结构,用队尾指针rear指向队列中

的队尾元素,用排头指针front指向排头元素的前一个位置。队列中的元素为从排

头指针front指向的后一个位置直到队尾指针rear指向的位置之间所有的元素。所

以,在循环队列中队尾指针rear和排头指针front共同确定了队列中元素的个数,

只知道排队指针front无法确定元素个数。本题答案为D选项。

5、某二叉树的前序序列为ABDFHCEG,中序序列为HFDBACEG。该二叉树的后

序序列为()。

A、IirDBGCCA

B、ABCDEFGH

C、HGFEDCBA

D、ACEGBDFH

标准答案:A

知识点解析:二叉树遍历可以分为3种:前序遍历(访问根结点在访问左子树和访

问右子树之前)、中序遍历(访问根结点在访问左子树和访问右子树两者之间)、后序

遍历(访问根结点在访问左子树和访问右子树之后),并且在遍历左右子树时也遵循

同样的规则。本题中,二叉树的前序序列为ABDFHCEG,可确定该二叉树的根结

点为A,后序序列最后访问的肯定是根结点A,排除B、D两项。再根据中序序列

为HFDBACEG,可确定结点A的左了树的根结点是B,右了树的根结点是C,则

后序序列倒数第2个访问的肯定是结点C,排除C选项。本题答案为A选项。

6、将数据和操作置于对象统一体中的实现方式是()。

A、隐藏

B、抽象

C、封装

D、结合

标准答案:C

知识点解析:对象是由描述该对象属性的数据以及可以对这些数据施加的所有操作

封装在一起构成的统一体.本题答案为C选项.

7、数据流图(DFD)的作用是()。

A、支持软件系统功能建模

B、支持软件系统的面向对象分析

C、描述软件系统的控制流

D、描述软件系统的数据结构

标准答案:A

知识点解析:数据流图是系统逻辑模型的图形表示,从数据传递和加工的角度,来

刻画数据流从输入到输出的移动变化过程,它直接支持系统的功能建模。本题答案

为A选项。

8、数据库管理系统(DBMS]是一种()。

A、应用软件

B、系统软件

C、计算机辅助设计

D、办公软件

标准答案:B

知识点解析:数据库管理系统是数据库系统的核心,它位于用户与操作系统之间,

从软件分类的角度来说属于系统软件。本题答案为B选项。

9、在数据库的三级模式中,可以有任意多个()。

A、概念模式

B、内模式

C、外模式

D、物理模式

标准答案:C

知识点解析:一个数据库可以有多个外模式(也称子模式或用户模式),但概念模式

和内模式(物理模式)只能有一个。本题答案为C选项。

10、设有课程关系模式如下:R(C#,Cn,T,Ta)(其中C#为课程号,Cn为课程

名,T为教师名,Ta为教师地址)并且假定不同课程号可以有相同的课程名,每个

课程号下只有一位任课教师,但每位教师可以有多门课程。该关系模式可进一步规

范化为()。

A、R1(C#,Cn),R2(T,Ta)

B、R1(C#,Cn,Ta),R2(T,Ta)

C、R1(C#,T),R2(T,Ta)

D、R1(C#,Cn,T),R2(T;Ta)

标准答案:D

知识点解析:本题关系模式R的主键为课程号,每个课程号下只有•位任课教

师,因此课程号可决定教师名,而教师名又决定教师地址,这里有对主属性的传递

依赖。可将该关系模式拆分为两个关系模式RI和R2,其中R1包含课程号、课程

名、教师名,R2包含教师名、教师地址.其中R1的主键是课程号,R2的主键为

教师名。这样两个关系都不会出现对主属性的传递依赖。本题答案为D选项。

11、以下选项不属于Python语言特点的是()。

A、平台无关

B、第三方库丰富

C、适合编写系统软件

D、语法简洁

标准答案:C

知识点解析:Pylhon语言最重要的三个特点是语法简洁、生态丰富、多语言集

成.除了这三个重要特点外,还有一些其他特点:平台无关、强制可读、支持中

文、模式多样、类库便捷。系统软件一般使用静态语言编写(采用编译方式执行);

Python语言属于脚本语言(采用解释方式执行),不适合编写系统软件。

12^如果Python程序执行时产生了“TypeError”的错误,其原因是()。

A、代码中的数据类型不匹配

B、代码使用了错误的关键字

C、代码中缺少“:”符号

D、代码里的语句嵌套层次太多

标准答案:A

知识点解析:TypeError指对类型无效的操作,也就是数据类型不匹配。

13、以下选项,不是Python保留字的选项是()。

A、and

B、with

C、is

D^count

标准答案:D

知识点解析:保留字也称关键字,指被编程语言内部定义并保留使用的标识符。

Python3.x版本的保留字有35个,分别是是and,as,assert,async>await,

break»class,continue,def,del,elif,else,except,False,finally,for,from,

global,if,import,in,is,lambda,None,nonlocal,not,or,pass,raise,

return,True,try,while,with,yield。

14、表达式eval(,500//W)的结果是().

A、50.0

B、50

C、500/10

D、'500/10»

标准答案:B

知识点解析:“x//「是指*与丫之整数商,即不大于x与y之商的最大整数。这

里,500//10的结果为50,由于加了单引号,故结果为字符串类型。eval。函数

将去掉字符串最外侧的引号,并按照Python语句方式执行去掉引号后的字符内

容。故答案为B项。

15、表达式type(type('45'))的结果是()。

A、〈class'type'》

B、〈class'str'>

C、Vclass'float')

D、None

标准答案:A

知识点解析:iype()函数用于对变量进行类型判断。,45,属于字符串类型,因此,

type(,45')返回的是Vclss'str'>。<clss'str'>属于type类型,因此type(type('45'))

的结果为〈class'type')。

16、x=2.6,表达式round(x)的结果是()。

A、2.6

B、2

C、3

D、2.0

标准答案:C

知识点解析;round(x,d)函数是指对x四合五入,保留d位小数,无参数d则返回

四舍五入的整数值。因此round(2.6)=3。

17^变量tstr='kip520',表达式eval(tstr[3:-1])的结果是()。

A、52

B、520

C、p520

D、p52

标准答案:A

知识点解析:tstr[3:-1]是指对字符串,kip52(T进行切片,其结果为'52"(字符串类

型):eval()函数是将字符串最外侧的引号去抻,并按照Python语句方式执行去抻引

号后的字符内容,因此evalC52,)=52。

18、设str1='python,,语句print(sirl.center(10,*))的设行结果是()。

A^python****

B、**python**

C、****python

D、SyntaxError

标准答案:D

知识点解析:str.center(width,fillchar)方法返回长度为width的字符串。其中str

处于新字符串中心位置,两侧新增字符串采用fiHchar填充,当width小于字符串

长度时,返回str;fiHchar是单个字符。本题中,strl.cenier(10,*)中的*两侧没有

引号,因此不是字符串类型,执行语句后会报错,故答案为D项。

19、执行以下程序,输出结果是()。y=['',"]print(all(y).any(y))

A、FalseTrue

TrueFalse

C、FalseFalse

D、TrueTrue

标准答案:A

知识点解析:对于any(x)函数,如果组合类型变量x中所有的值都是0、“或Fake

时,那么结果为False;如果所有元素中有一个值非0、”或False,那么结果就为

Trueo对于•all(x)函数,只要组合类型变量x中存在值为0、”或False的元素,那

么结果为False,否则结果为True。本题变量y中,',和”是不同的。八表示空格字

符串,”表示为空的元素,因此all(y)的结果为False,any(y)的结果为True。

20、ls=[T,2,3],以下关于循环结构的描述,错误的是()。

A^表达式foriinrange(len[ls))的循环次数跟forIinIs的循环次数是一样的

B、表达式foriinrange(len(ls))跟foriinIs的循环中i的值是一样的

C、表达式foriinrang表emls))的循环次数跟foriinrange(0,len(ls))的循环次数是

一样的

D^表达式foriinrange(lenQs))的循环次数跟foriinrange(1,len(ls)+l)的循环次数

是一样的

标准答案:B

知识点解析:range。函数只有一个参数时表示会产生从。开始计数到输入参数的前

一位整数结束的整数列表;有两个参数时,则将第一个参数作为起始位,第二个参

数为结束位,输出从起始位到结束位的前一位的整数列表;有三个参数时,第三个

参数表示步长,起始位按照步长递增或递减。len(ls)函数返回列表1s的元素个数

3。B项,3「仙11须86(3(15))中的值分别为0,1,2,而在foriin1s中每一步的i

为T,2,3,所以i的值不相同。

21、以下关于随机运算函数库的描述,错误的是()。

A、random(a,b)产生一个a到b之间的随机小数

B、random.seed。函数初始化随机数种子,默认值是当前系统时间

C、random库的随机数是计算机按--定算法产生的,并非完全随机

D^Python内置的random走主要用于产生各种伪随机数序列

标准答案:A

知识点解析:random。产生一个(0.0,1.0)之间的随机小数,uniform(a,b)产生

一个[a,b]之间的随机小数,randint(a,b)产生一个[a,b]之间的整数。因此A项描

述错误。

22、以下代码的输出结果是()。print。:@>10.6)\fonnat(,Fog,))

A、@@@@Fog

B、@@@@@@@Fog

C、Fog@@@@@@@

D^Fog@@@@

标准答案:B

知识点解析:'{:@>10.6}\formatCFog,)表示输出时宽度为10,右对齐且填充

@,若字符串长度大于6,只保留前6个字符,小于等于6全部输出。因此本题答

案为@@@@@@@Fog.

23、执行以下程序,输入ab,然后回车,结果是()。k=10whileTrue:s=input(,

请输入q退出:')ifs='a':k+=Icontinueelse:k+=2breakprint(k)

A、13

B、请输入q退出:

C、12

D、10

标准答案:C

知识点解析:while循环用于判断输入的值是否与H相等.若相等则执行k+=l;若

不相等则执行k+=2。本题中输入的是ab,与‘a,不相等,因此执行k+=2,k=12o

24、以下程序的输出结果是()。s=10defrun(n):globalsforiinrange(n):s+=i

returnsprint(s.run(5))

A、2020

B、1020

C、1010

D、UnboundLocalError

标准答案:B

知识点解析:本题中,变量s为全局变量,函数内部改变了该变量的值,外部该变

量的值不变,因此最后s的值仍为10。然后执行函数run(5),将实参5传递给形参

n,函数体内for循环执行后,i的值依次为0、1、2、3、4,因此函数体内

s=10+0+l+2+3+4=20,函数的返回值为20。故答案为B项。

25、以下关于Python的函数的描述,正确的是()。

A、函数内部需要改变外部定义的一个简单类型变量,需要显式声明其为全局变量

B、函数内部改变了外部的笥单类型,外部该变量的值也随之改变

C、函数内部定义了跟外部的全局变量同名的组合类型的变量,则函数内部引用的

该名字的变量时不确定是外部的还是内部的

D、函数内部改变了外部定义的组合类型变量的值,外部该变量的值不随之改变

标准答案:A

知识点解析:对于在函数外部定义的全局变量,若该变量为简单类型变量,在函数

内部使用时需要提前使用保留字global声明其为全局变量;函数内部改变了该变量

的值,外部该变量的值不变,因此A项正确、B项错误。若该变量为组合类型变

量,在函数内部定义了跟该变量同名的变量,引用时该变量是内部的,函数内部改

变了组合类型变量的值,外部该变量的值不能确定是否随之改变,因此C、D两项

错误。

26、以下程序的输出结果是()。Is=[10]defrun(n):Is.append(n)run(5)print(ls)

A、|IO|

B、UnboundLocalError

C、[10,51

D、None

标准答案:C

知识点解析:在Python中,列表变量作为全局变量时,在函数中可以直接修改,

不需要便用global声明。本题中,1s为列表类型,为全局变揖:函数体中

is.append(n)方法是在列表最后增加一个元素;调用函数后,直接在列表1s中增加

一个元素5,最后输出改变后的列表1s。故正确答案为C项。

27以下程序的输出结果是()。defhub(ss,x=2.0,y=4.0):ss+=x*yss=10

print(ss,hub(ss,3))

A、22None

B、10None

C、10.022.0

D、22.ONone

标准答案:B

知识点解析;本题中,变量s为全局变量,函数内部改变了该变量的值,外部该变

量的值不变,因此最后s的值仍为10。调用函数hub()后,由于函数数体内没有

return语句,即无返回值,所以默认返回None。故答案为B项。

28、以下程序的输出结果是()。Is=[12,44,23,46]foriinIs:ifi='44':

print(,foundit!i=',i)breakelse:print('nolfoundit../)

Asnotfoundit...

B、foundit!i=44

C、foundit!i=44notfoundit...

D^foundit!i='44'notfoundit...

标准答案:A

知识上解析:由于列表Is中所有元素都是整数类型,不可能等于字符串类型

的,44',即if语句中的条件不成立,需执行else语句,输出notfoundit...o

29、以下程序的输出结果是()。x=4ca=,123456*ifstr(x)inca:

print(ca.replace(ca[x],.slr(x-2))

A、123456

B、123426

C、5

D、2

标准答案:B

知识点解析:slr(4)=,41此字符在字符串ca中,满足if条件,执行输出语句。

ca.replace(ca[4],str(4-2)是指返回字符串ca副本,ca[4]指字符串中序号为4的

字符,5、str(x—2)返回符2,也就是用字符2来替换字符5。故答案为B项。

30、给以下程序填空,能输出{0:[90,'Aele'],1:[87,‘Bob'],2:[93,Hala5]}

结果的选项是0。X=[90,87,93|y=("Aele",,'Bob","lala")z={)foriin

range(len(x)):print(z)

A、z[i]=[x[i],y[i]]

B、zlij=xli],yli]

C、z[i]=list(zip(x,y))

D、z[i]=x,y

标准答案:A

知识点解析:由最后输出的字典可以看出,它由0,1,2作键,列表x的元素作为

每个值的第一个元素,元组y的元素作为每个值的第二个元素,即字典z中键i对

应的值为y[i]]0故答案为A项。

31、以下程序的输出结果是()。Ll=[l,2,3,4|L2=L1.copy()L2.reverse()

print(Ll)

A、1,2,3,4

B、[4,3,2,1]

C、[1,2,3.4]

D、4,3,2,I

标准答案:C

知识点解析:本题使用了copy。函数,在这种情况下,列表L1和L2是不同的对

象,他们也不指向同一片内存空间,修改列表L2不会影响到列表L1。因此,L1

仍然为[1,2,3,4|。

32、以下程序的输出结果不可能的选项是()。importrandomIs=[2,3,4,6]s=

10k=random.randint(0,2)s+=ls[k]prints)

A、12

B、14

C、13

D、16

标准答案:D

知识点解析:randint(a,b)产生一个[a,b]之间的整数,因此random,randint(O,2)

的返回值可能为O1或者2(即k的值),ls[0]=2,ls[l]=3,ls[2]=4,所以s有三个

可能的值s+=2,s+=3,s+=4,也就是12、13、14。

33、以下关于文件的描述,错误的是()。

A、open。函数的参数处理模式方表示以二进制数据处理文件

B、open。打开文件之后,文件的内容就被加载到内存中了

C、open函数的参数处理模式中表示可以对文件进行读和写操作

D、fo.readlines。函数是将文件的所有行读入一个列表

标准答案:B

知识点解析:如果文件只被打开,文件内容是不会装入内存的,只有执行读取操作

的时候才会把文件内容相应的长度(在read。函数中指定读取的字节长度)装入内

存。故B项描述错误。

34、以下程序输出到文件a.txt里的结果是()。fo=open("a.txt",W)x=「春

眠','处处’,'夜来1fb.write!incs(x)fo.closc()

A、春眠处处夜来

B、春眠处处夜来

C、,春眠"处处“夜来,

D、春眠…处处一夜来’

标准答案:A

知识点解析:fo.writelines(x)是指直接将列表类型的各元素连接起来写入文件。

foo故答案为A项。

35、以下方法能返回列表数据类型的选项是()。

A、s.ccntcr()

B、s.stripO

C、s.replace()

D、s.split()

标准答案;D

知识点解析:s.center。是字符串居中函数:s.strip。函数是从字符串s中去掉其

左右两侧指定的字符:,返叵的是字符串;s.replce(okLnew)函数返回字符串s的

副本,所有old子串被替换为new。s.split。函数返回一个列表,若有参数,由s

根据参数被分隔的部分构成,省略参数默认以空白符分隔。

36、以下关于数据维度的描述,正确的是()。

A、一维数据可以用列表表示,也可以用字典表示

B、JSON格式可以表示具有复杂关系的高维数据

C、采用列表表示一维数据,各个元素的类型必须是相同的

D、一维的列表a里的某个元素是一个一维的列表b,这个列表是二维数据

标准答案:B

知识点解析:字典属于高维数据,A项错误;采用列表表示一维数据时,元素的数

据类型可以不同,C项错误;D项说法片面,列表a还可能是高维的。故答案选B

项。

37、以下不属于Python的pip工具命令的选项是()。

A、get

B、install

C、show

D、download

标准答案:A

知识点解析:install命令用于安装第三方库;download命令用于下载第三方库的安

装包,但并不安装;show命令是列出某个已经安装的库的详细信息。gel不属于

pip工具的命令。

38、用Pyinstaller工具把Python源文件打包成一个独立的可执行文件,使用的参

数是()。

A、-L

B、-D

C、-F

D、-i

标准答案:C

知识点解析:Pyinstaller工具没有-L参数。-D是默认值,生成dist目录;-F是指在

dist文件夹中只生成独立的打包文件;-i是指定打包程序使用的图标文件。

39、random库采用更多随机数生成算法是()。

A、梅森旋转算法

B、蒙特卡洛方法

C、线性同余法

D、平方取中法

标准答案:A

知识点解析;random库是Python的标准库,用于产生各种分布的伪随机数序列。

它采用梅森旋转算法生成伪随机数序列。

40、turtle画图结束后,让画面停顿,不立即关掉窗口的方法是()。

A、turtle.setup()

B、turtle.done()

C、turtle.pcnup()

D、turtle.clear()

标准答案:B

知识点解析:setup。函数用于设置主窗体的大小和位置;penup()函数指提起画笔;

clear。函数清空当前窗口,但不改变画笔的位置。done。函数是让画面停顿,但不

立即关掉窗口。

二、基本编程题(本题共3题,每题7.0分,共3分。)

41、考生文件夹下存在一个文件PY101.py,请写代码替换横线,不修改其他代

码,实现以下功能:键盘输入正整数n,按要求把n输出到屏幕,格式要求:宽度

为14个字符,数字中间对齐,不足部分用;填充。例如:键盘输入正整数n为

1234,屏幕输出=====1234=====#请在处使用一行代码或表达式替换##

注意:请不要修改其他已给出代码n=eval(input(”请输入正整数:”))

print("{}".formal(n))

标准答案:n=eval(input("请输入正整数:"))print("{:=A14}".format(n))

知识点解析:该题目主要考查Python字符串的格式化方法。Python语言推荐使

用.format。格式化方法,其使用方式如下:<模板字符串>.format(〈逗号分隔

的参数〉)其中,模板字符串是•个由字符串和槽组成的字符串,用来控制字符串

和变量的显示效果。槽用大括号((})表示,对应formal。方法中逗号分隔的参数。

如果模板字符串中有多个槽,可以通过format。参数的序号在模板字符串槽中指定

参数的使用,参数从。开始编号。例如:"{0}曰:学而不思则罔,思而不学

{1}。format(“孔子",”则殆")其结果为:‘孔子曰:学而不思则罔,思而不学则

殆。'format。方法的槽除了包括参数序号,还可以包括格式控制信息,语法格式如

下:{V参数序号〉:〈格式控制标记》}其中,格式控制标记包括:V填充〉V

对齐〉<宽度><,><.精度类型>6个字段,由引导符号(:)作为引导标

记,这些字段都是可选的,可以组合使用。〈填充〉:指用于填充的单个字符。

〈对齐〉:分别使用V、>和八三个符号表示左对齐、右对齐和居中对齐。〈宽度

>:当前槽的设定输出字符宽度。<,>:用于显示数字类型的千位分隔符。

<.精度〉:由小数点(.)开头,对于浮点数,精度表示小数部分输出的有效位

数;对于字符串,精度表示输出的最大长度。〈类型〉:表示输出整数和浮点数

类型的格式规则。本题格式要求为:宽度为14个字符,数字中间对齐,不足部分

用=填充。因此模板字符串为:{:=74}。

42、考生文件夹下存在一个文件PY102.py,请写代码替换横线,不修改其他代

码,实现以下功能;a和b是两个列表变量,列表a为[3,6,9]已给定,键盘输入

列表b,将a列表的三个元素插入到b列表中对应的前三个元素的后面,并显示输

出在屏幕上。例如:键盘输入列表b为[1,2,3],因此,屏幕输出计算结果为

[1,3,2,6,3,9]#请在处使用一行代码或表达式替换##注意:请不要

修改其他已给出代码a=[3,6»9]b=eval(input())#例如:[1,2,3]j=lforiin

range(len(_(l))):b.(2)j+=_(3)print(b)

标准答案:a=[3>6,9]b=eval(inpu【())#例如:[1,2,3|j=lforiin

range(len(a)):b.insert(j,a[i])j+=2print(b)

知识点解析:foi•循环中,需要遍历列表a中的每一个元素,然后将每个元素插入

到列表b中相应的位置,因此第一空填入:a。在列表中插入元素使用insert。方

法,inscr®,x)表示在列表中索引序号为j的位置增加元素x。题目耍求将a列表

的每个元素插入到b列表中对应的元素的后面,即元素a[0]插入到列表b中索引序

号为1的位置。因此第二空填入:insert(j,a[i])ob列表中插入一个元素后,该元

素后面的元素的索引序号都将加1,再插入列表a中的第二个元素时,变量j应加

2才是该元素的索引序号位置,因此第三空填入:2。

43、考生文件夹下存在一个文件PY103.py,请写代码替换横线,不修改其他代

码,实现以下功能:以100为随机数种子,随机生成3个在1(含)到9(含)之间的随

机整数,计算这三个随机整数的立方和。#请在处使用一行或多行代码替换

##注意:请不要修改其他已给出代码importrandom#此处可多行s

-0##此处可多行print(s)

标准答案:importrandomrandom.seed(100)#此处可多行s=0#foriinrange(3):

n=random.randint(l,9)#此处可多行s+=n**3print(s)

知识点解析:题目要求以100为随机数种子,seed。函数用于初始化随机数种子,

因此第一空应填入:random.seed(IOO)。题目要求随机生成3个在1(含)到9(含)

之间的随机整数,再计算这三个随机整数的立方和。这需要使用for循环,3个数

需遍历3次,代码为:foriinrange(3):;randint(a,b)函数用于生成一个[a,b]之

间的整数(包含a和b),题目要求的是1(含)到9(含)之间的随机整数,则用

random.randint(l,9)生成随机整数;一个数的立方用n**3表示,再求几个数的

立方和用s+=n**3。

三、简单应用题(本题共3题,每题上0分,共3分。)

44、使用turtle库的turtle.fd()函数和turtle.seth()函数绘制一个边长为100像素

的正五边形,在考生文件夹下给出了程序框架文件PY20I.py,在横线处补充代

码,不得修改其他代码。效果图如下图所示:处

使用一行或多行代码替换##注意:请不要修改其他已给出代码importturtle

turtle.pensize(2)d=0foriinrange(1,(1)):(2)d

+=(3)turtle,seth(d)

标准答案:importturtleturtle.pensize(2)d=0foriinrange(1,6):turtle.fd(100)

d+=72turtle.seth(d)

知识点解析:本题要绘制一个多边形,需要使用turtle库(海龟),首先使用import

保留字把lurtle库导入。由于绘制的是正五边形,for循环遍历中,要对序号为1〜

5的每条边依次绘制,i的取值从I开始到5结束。因此第一空填入:6。题目要求

使用turtle.fd()函数。turtle.fd()函数用于控制小海龟向当前行进方向前进一个指

定距离,题H要求边长为1。0像素,因此笫二空填入:lurile.0(100)。

lurtle.se【h(d)函数用于设置小海龟当前行进方向为d,该角度是绝对方向角度值。

在正五边形中,相邻两条边形成的外角均为72度,即绘制完一条边后,小海龟的

行进方向要增加72度后再绘制下一条边。因此第三空填入:72。

使用字典和列表型变量完成最有人气的明星的投票数据分析。投票信息由考生文件

夹下文件vote,txt给出,一行只有一个明星姓名的投票才是有效票。有效票中得

票最多的明星当选最有人气的明星。

45、问题1:请统计有效票张数。在考生文件夹下给出了程序框架文件PY202-

1.py,补充代码完成程序c#请在处使用一行代码或表达式替换##注

意;请不要修改其他已给III代码f=opcn("votc.txt")names=f.rcadlincs()

f.close()n=0fornamein(1):num=(2)if

⑶:n+=_⑷print("有效票{}张”.format(n))

标准答案:f=open("vote,txt")names=f.readlines()f.close()n=0fornamein

names:num=len(name.split())ifnum==l:n+=lprinl。有效票(}张”.format(n))

知识点解析:题目明确给出“•行只有•个明星姓名的投票才是有效票”,我们就要

判断文件“vote,txt”中每行都有几个姓名,若为一个姓名,则有效票数加1,若多

于一个姓名则不统计。用readlines。函数读入文件“vote.txt”中所有行,以每行为

元素形成列表names。用for循环遍历names列表中的每个元素name,判断每个元

素的长度len(name),如果长度num为I,则为有效票,就将有效票数n力!H。因

此,第•空填入:names;第二空填入:lcn(namc.split。),split。函数表示以空格

分隔name中的元素;第三空填入:num==l;第四空填入:1。

46、问题2:请给出当选最有人气明星的姓名和票数,在考生文件夹下给出了程序

框架文件PY202-2.py,补充代码完成程序。#请在处使用一行代码或表达

式替换##注意:请不要修改其他已给出代码f=open("vote.txt")names=

f.rcadlines()f.close()D={)fornamein(1):if

len((2))==1:D[name[:-1]]=(3)+11=

list(D.itemsO)1.sort(key=lambdas:s|1b(4))name=l|01[0|

score=print("最具人气明星为:{},票数为:{}'*.format(name,score))

标准答案:f=open("vote.txt")names=f.readlines()f.close()D={}fornamein

names:iflen(name.split())==l:D|name[:-1]]=D.get(namel:-l],0)+11=

list(D.items())1.sort(key=lambdas:s[l],reverse=True)name=l[0][0]score=

l|U||l|pnni("最具人气明星为:(},票数为:{}".format(name,score))

知识点解析:接着问题一的思路,当元素name被判定为有效票后,就将该元素存

入字典D中作为一个键,该键所对应的值为1,在后面循环中只要遍历的元素和键

相同,就将该键对应的值加I。l=list(D.ilems。)表示将字典类型变成列表类型,

字典中的每个键值对对应列表中的一个元组。随后,对列表1中的元素进行排序,

用到sort。方法,参数"key=lambdas:中lambda是一个隐函数,是固定写法,

不能写成别的单词;s表示列表中的一个元素,在这里表示一个元组,s只是临时

起的••个名字,也可以使用任意的名字;s[l]表示以元组H第:个元素排序。sort()

方法的第二参数表示是按哪种方式排序,若为“reverse=True”表示按降序排序,若

该参数缺省或"reverse=False",表示按升序排序。根据变量name和score,可以确

定排序后列表1中的第•.个兀素中就是最具人气明星姓名和选票数,列表是按降序

排序的。因此,第一空填入:names;第二空填入:name.split():第三空填入:

D.get(name[:—1],0);第四空填入:reverse=True«

四、综合应用题(本题共2题,每题7.0分,共2分。)

考生文件夹下的文件data,ixt是一个来源于网上的技术信息资料。

47、问题1:在考生文件夹下给出了程序框架文件PY301J.py,补充代码完成程

序。用Pylhon语言中文分词第三方库jieba对文件data.ixl进行分词,并选择长度

大于等于3个字符的关键词,写入文件outl.txt,每行一个关键词,各行的关键

词不重复,输出顺序不做要求,例如:人工智能科幻小说…#请在…处使用多行

代码替换##注意:其他已给出代码仅作为提示,可以修改…#此处可多行f=

opcn('outl.txt','w')…#比处可用多行f.closc()

标准答案:importjiebaf=open('data.txt','r')#此处可多行data二f.read()

f.close()f=openC'outl.txt','w')datal=jieba.lcut(data)d=[|forxindatal:if

lcn(x)>=3andxnotind:d+=[x]f.writc(x+,\n')f.close()print(d)

知识点解析:本题要使用jieba库,则首先用import保留字引用jieba库。打开

“data.txt”文件

温馨提示

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

评论

0/150

提交评论