试卷总分:100分


选择题 25题 50分

01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25


判断题 10题 20分

26 27 28 29 30 31 32 33 34 35


编程题 3题 30分

36 37 38

E1057 电子学会青少年软件编程等级考试-Python -202412Python五级真题-考试

选择题 共25道

01

已知x=[3,5,7],那么执行语句x[len(x):]=[1,2]后,x的值?()

2分
登录后查看选项
02

以下代码的输出结果是?()x='C\0T\0P'print(len(x))

2分
登录后查看选项
03

字符串str1='victory',显示结果为'or'的选项是?( )

2分
登录后查看选项
04

表达式str(18/3)的结果是?( )

2分
登录后查看选项
05

执行下列程序段后输出结果?( )

>>>str1='python world'

>>>str1.title()

2分
登录后查看选项
06

执行下面程序段后,结果正确的选项是?( )

dic1={1:'a',2:'b',3:'c',4:'d'}

str1=''

for i in range(1,3):

   str1+=dic1[i]

print(str1)

2分
登录后查看选项
07

书店现有字典书目dict1={1:'平凡世界',2:'西游记',3:'红楼梦',4:'水浒传'},当前红楼梦售出,需要删除字典书目中的红楼梦,正确的操作是?( )

2分
登录后查看选项
08

执行下列程序语句的结果是?( )

>>>list1=[i*i  for i in range(1,9,2)]

>>>list1

2分
登录后查看选项
09

执行下列程序语句后tuple(t)和list(t)的结果为?( )

>>>t=(i*i for i in range(4))

>>>tuple(t)

>>>list(t)

2分
登录后查看选项
10

执行下列程序语句的返回结果为?( )

>>>{i:str(i*i) for i in range(4)}

2分
登录后查看选项
11

关于下列Python代码,说法正确的是?( )

su=['苏洵','苏轼', '苏辙']

print(su[2])

2分
登录后查看选项
12

已知list=["Word","for","sent","city","piano"],则list[3][2]的返回值为?( )

2分
登录后查看选项
13

有如下Python程序段,程序运行后,输出的结果是?( )

s="PYTHON"

a,b=s[:3],s[4:]

print(a+b)

2分
登录后查看选项
14

集合是Python语言提供的内置数据结构,与列表、字典一样都属于可变类型的序列。集合是没有value的字典,集合中的元素不允许重复,不允许修改,下列说法正确的是?( )

2分
登录后查看选项
15

有如下程序段,程序运行后输出的结果是?( )

set1 = {1,2,3, 4}

set2 = {3, 4,5, 6}

difference = set1 - set2

print(difference)

2分
登录后查看选项
16

运行以下程序,输出结果是?( )

t1=(1,3,5)

t2=(2,4,6)

t3=((i**2) for i in t2)

print(tuple(t3))

2分
登录后查看选项
17

下列关于Python语言中元组数据类型的说法,错误的是?( )

2分
登录后查看选项
18

有如下Python程序段:

numbers=[]

for i in range(1,101):

   if i%11==2 and i%5==3:

       numbers.append(i)

print(numbers)

执行该段程序后,输出的结果是?( )

2分
登录后查看选项
19

输出"12 9 6 3 ", 下列程序不正确的是?( )

2分
登录后查看选项
20

下列语句的输出结果是?( )

for i in range(6):

   if i%2==0:

      continue

   else:

       print(i,end=',')

2分
登录后查看选项
21

执行如下Python程序,得到的结果是?( )

cnt=0

for i in range(0,10):

   for j in range(i,10):

       if i+j==10:

           cnt+=1

print(cnt)

2分
登录后查看选项
22

下列语句能随机生成一位[10,20]范围之间正整数的语句是?( )

2分
登录后查看选项
23

以下不属于jieba库分词的三种模式的选项是?( )

2分
登录后查看选项
24

阅读以下代码,描述错误的选项是?( )

import wordcloud

txt="Nothing is impossible!"

w=wordcloud.WordCloud(background_color="white")

w.generate(txt)

w.to_file('px.png')

2分
登录后查看选项
25

在Python的datetime模块中,下面哪个方法可以获取当前时间?( )

2分
登录后查看选项

判断题 共10道

26

字符串的rfind()方法是用来查找一个字符串在另一个字符串指定范围中首次出现的位置,如果不存在,则返回-1。( )

2分
登录后查看选项
27

range(20,0,-2)表示从20倒序遍历到0,共遍历了11次,步长为2。( )

2分
登录后查看选项
28

小明给自己的玩具建立了一个玩具字典为dict1={'车':'大卡车','变形金刚':'擎天柱','变形车':'擎天柱'}。( )

2分
登录后查看选项
29

若列表lst=[1,2,4,-1,2],则执行“print(lst[1:4:2][1])”语句后输出的结果为-1。( )

2分
登录后查看选项
30

学校运动会上,小卢同学用Python写了一个汇总程序,在他的程序中参赛项目集合的元素是可以相同的。( )

2分
登录后查看选项
31

现有集合 items = set(("Spring", "Summer", "seasons", "Autumn", "Winter")) ,第一次使用语句items. pop ("seasons "),一定可以删除元素 "seasons"。( )

2分
登录后查看选项
32

字典推导式是一种在Python中快速创建字典的方法。在字典推导式中也可以添加条件表达式,来实现筛选符合条件的键值对。( )

2分
登录后查看选项
33

运行下列代码的输出结果为(3,2,1)。( )

t=(2,3,1)

t.sort()

print(t)

2分
登录后查看选项
34

math模块中floor(x)函数为:向上取整,返回大于等于x的最小整数。( )

2分
登录后查看选项
35

str1='abcstringabc',执行str1.strip('abc')后,返回'stringabc'。( )

2分
登录后查看选项

编程题 共3道

36

知识竞答

小美参加环保知识竞答比赛,回答结果存储在字符串中,其中回答正确用“T"表示,回答错误用“F”表示。回答错误不得分,连续答对k题,则第k题加k分。下面的自定义函数能根据答案字符串计算小美的总分数,它的形式参数ans是一个只包含"F"和"T"两种字符的字符串,函数根据得分规则和答案字符串计算出总分数。例如当ans="FTTTFTTFFT"时,函数返回10;ans="TTTTFFTFTF"时,函数返回12。实现上述功能的程序如下,请在程序划线处填入合适的代码。

def get_score(ans):

   k,s=0,0

   for c in ans:

       if c=="T":

           k=k+1

                   ①        

       else:

                   ②        

   return s

ans="FFFTTTTTFF"

print(        ③        )

10分
登录后作答
37

游戏问题

小强同学用Python语言创作了一个非常简单好玩的游戏。这个游戏的规则:由两名玩家参与游戏,分为A、B两队,A队以5、6、7、8、9为幸运数字,B队以2、3、4、10、11、12为幸运数字。每一轮游戏时,在1~6之间生成两个随机数,如果两个随机数之和是A队的幸运数字,则A队得2分;反之,B队得2分。每次游戏共100轮,最后得分A队高于B队,A队胜,否则B队胜。

请补全下列程序,实现此功能。

'''

import random

A_lucky=[5,6,7,8,9]

B_lucky=[2,3,4,10,11,12]

A=[]

B=[]

for i in range(100):

   n1,n2=        ①            #产生两个随机数

   s=        ②        

   if s in         ③        :

       A.append(2)  #得分+2

   else:

       B.append(2)  #得分+2

if len(A)>len(B):

   win='A队'

else:

   win='B队'

print('A队得分:{},B队得分:{},本次游戏的获胜方是:{}!'.format(        ④        ))

   

———————分割线,以下为程序输入输出结果—————————

A队得分:122,B队得分:78,本次游戏的获胜方是:A队!

10分
登录后作答
38

篮球队员

篮球队里有10名同学。训练时,教练会随机抽取同学组成两个队伍进行对抗。

请补全下列程序,实现随机分队的功能。

import random

players=['曹操','夏侯惇','司马懿','刘备','关羽','张飞','周瑜','孙权','甘宁','鲁肃']

A=set()    #创建空集合A

while         ①        :     #队员人数够不够

   n=random.randint(0,9)

   player=        ②        #获取队员名字

   A.        ③              #将队员名字添加到A队

P=        ④                 #创建全体队员的集合

B=P-A

print('A队的队员有:{} \nB队的队员有:{}'.format(A,B))

———————分割线,以下可能为程序输入输出结果—————————

A队的队员有:{'刘备', '司马懿', '张飞', '关羽', '鲁肃'}

B队的队员有:{'曹操', '孙权', '夏侯惇', '周瑜', '甘宁'}

10分
登录后作答