2023年3月电子学会青少年软件编程内功等级考试五级试题
一、单选题(共25题,共50分)
1. 已知一个列表lst = [2,3,4,5,6],lst.append(20),print(lst)的结果是?( )
A. [10,2,3,4,5,6,20]
B. [20,2,10,3,4,5,6]
C. [2,3,4,5,6,20]
D. [2,3,4,5,6,10,20]
2. 水果店管理员现有列表 fruits = ['apple', 'orange', 'banana', 'peach'] ,当前卖出苹果('apple'),需要删去列表元素'apple',正确的操作是?( )
A. del fruits[0]
B. del fruits['apple']
C. del fruits[1]
D. del fruits[apple]
3. 科技小组4位同学分别在Python中定义了一个列表,正确的是?( )
A. list1 = ['power'; 'sensor'; 'control']
B. list2 = [power, sensor, control]
C. list3 = ['power', 'sensor', 'control']
D. list4 = ['power'、 'sensor'、'control']
4. 下列语句正确的输出是?( )
lis= [4 * c for c in "draw"]
print(tuple(lis))
A. ('4*d', '4*r', '4*a', '4*w')
B. ('dddd', 'rrrr', 'aaaa', 'wwww')
C. ('draw', 'draw', 'draw', 'draw')
D. (4*d, 4*r, 4*a, 4*w)
5. Python中 print('十六进制{0:x}'.format(100)) 正确的输出结果是?( )
A. 十六进制0:x64
B. 十六进制64
C. 十六进制0x100
D. 十六进制100
6. 下面可以正确输出 号称"世界屋脊"的青藏高原 字符的Python语句是?( )
A. print('号称\"世界屋脊\"的青藏高原')
B. print(号称\"世界屋脊\"的青藏高原)
C. print('号称'\"世界屋脊\"的青藏高原)
D. print("号称\"世界屋脊\"的青藏高原)
7. Python使用range可以创建数值列表。下面可以正确输出不超过1000的10的倍数正整数的语句是?( )
A. print(list(range(1, 1000, 10)))
B. print(list(range(0, 1000, 10)))
C. print(list(range(10, 1001, 10)))
D. print(list(range(10, 1000, 10)))
8. 学生机器人比赛的时候经常会用到倒计时程序。下面可以正确倒序输出5以内正整数的语句是?( )
A. print(list(range(5, -1, 1)))
B. print(list(range(-1, 5, 1)))
C. print(list(range(5, 0, -1)))
D. print(list(range(5, 1, -1)))
9. 有一个字典内容如下,它的元素数量有几个?( )
info = {'Id': 12, 'Num': 4, 'height': 9 }
A. 12
B. 3
C. 4
D. 9
10. 现有集合 items = set(("height", "width", "color", "align")) ,需要在集合中添加元素"text",正确的是?( )
A. items.add("text")
B. items.insert("text")
C. items.pop("text")
D. items.set("text")
11. 计算三位完全平方数(100-999范围内),正确的生成器推导式是?( )
A. square = (x**2 for x in range(10,32))
B. square = (x**2 for x in range(32))
C. square = (x**2 for x in range(10,31))
D. square = [x**2 for x in range(31)]
12. 下列Python序列解包,正确的输出是?( )
fruit=['apple','peach','orange']
weight=[65,77,68]
for i,j in zip(fruit,weight):
print(i,j,end=' ')
A. 'apple','peach','orange',65,77,68
B. apple peach orange 65 77 68
C. apple 65 peach 77 orange 68
D. apple 65 , peach 77 , orange 68
13. 下列哪个选项是Python math库的数字常数?( )
A. math.log
B. math.inf
C. math.rnd
D. math.exp
14. Python中词云主要有WordCloud库,在创建好词云对象后,可以使用什么方法生成词云,并使用to_file方法将词云图像保存在文件中?( )
A. WCloud
B. generate
C. random
D. jieba
15. 有列表li= [‘a’,’b’,’c’,’d’],执行li=li + [‘d’,’e’,’f’] 后,print(li)的结果是?( )
A. [‘a’,’b’,’c’,’d’], [‘d’,’e’,’f’]
B. [‘a’,’b’,’c’,’d’,’e’,’f’]
C. (‘a’,’b’,’c’,’d’,‘d’,’e’,’f’)
D. [‘a’,’b’,’c’,’d’,‘d’,’e’,’f’]
16. 已知有元组tup1=('a','b'),tup2=(1,2,3),tup3=tup1+tup2,执行print(len(tup3))后结果是?( )
A. 5
B. 3
C. 2
D. 0
17. 现在有str1="day day up up .",请问str1[5]的值是?( )
A. d
B. a
C. day d
D. p
18. 下面哪个选项不可以输出语句"我要考python,今年考5级。"?( )
A. print("我要考{},今年考{}级。".format("python",5))
B. print("我要考{str},今年考{grade}级。".format(grade=5,str="python"))
C. print("我要考%s,今年考%s级。"%(5,"python"))
D. print("我要考%s,今年考%d级。"%("python",5))
19. 下面程序要输出1~10,则在①处应填入?( )
x = list(range( ① ))
t = 1**2
for i in x:
print(i+t)
A. 5
B. 0,10,2
C. 10
D. 0:10:2
20. >>> range(9,2,-2)[0]执行后的结果是?( )
A. 0
B. -2
C. 9
D. 2
21. 字典中多个元素之间使用 分隔开,每个元素的“键”与“值”之间使用 分隔开。
下列选项中正确的填空选项是?( )
A. 逗号 冒号
B. 逗号 分号
C. 冒号 句号
D. 分号 圆点号
22. 下列哪一个选项可以输出内容:{'World', 'e', 'H', 'l', 'o'}?( )
A.
s=set("Hello")
s.append("World")
print(s)
B.
s=set("Hello")
s.add("World")
print(s)
C.
s=set("Hello")
s.update("World")
print(s)
D.
s=set("Hello")
s.insert("World")
print(s)
23. 根据下列代码及运行结果判断字典推导公式实现的功能?( )
a ={'x ': 6,'y ': 9}
a_change= {v: k for k, v in a.items( )}
print(a_change)
A. 创建字典并输出
B. 交换字典的key和value
C. 输出字典key和value
D. 遍历字典
24. 下列代码运行后的正确选项是?( )
import time
a=time.gmtime()
print(time.strftime('%Y-%m-%d %a %h:%M:%S %p',a))
A. 2023-02-01 Wed Feb:08:04 PM
B. Wed Feb: 2023-02-01 08:04 PM
C. Wed Feb:08:04 PM 2023-02-01
D. 2023-02-01 Wed Feb:08:04
25. Python的random库中,random.choice()命令的功能是?( )
A. 返回时间值
B. 返回随机产生的一个字符串
C. 获取随机整数
D. 随机获取一个元素并返回
二、判断题(共10题,共20分)
26. 在Python中设定字符串 str="Happy new year", 则str.rfind('y')返回值为4。( )
正确 错误
27. 乐器社团活动,小明用Python进行信息汇总,为了便于操作,他使用了各个元素之间没有先后顺序的集合类型。( )
正确 错误
28. 已知元组tup1='a','b','cd',执行print(tup1.count('cd'))后的结果是3。( )
正确 错误
29. 在python中使用双重转义(用两个斜杠)输出文件路径,如:"d:\test\text\file1.txt",在字符串中这样表示:l="d:\\test\\text\\file1.txt",print(l)。( )
正确 错误
30. 执行下列两段代码的结果是一致的。( )
代码1:
for i in range(9,2):
print("i=",i)
代码2:
for j in range(2,9,-2):
print("j=",j)
正确 错误
31. 字典对象的items()方法是返回字典中的“键-值对”对象。( )
正确 错误
32. 集合类型是一个包含0个或多个数据项的无序的、不重复的数据组合。其中,元素类型只能是固定数据类型,如整数、浮点数、字符串、元组等。( )
正确 错误
33. 使用生成器对象的元素时,不可以将其根据需要转化为列表或者元组。( )
正确 错误
34. wordcloud库生成词云有文本生成和频率生成两种方法。( )
正确 错误
35. 在Python的列表数据结构中,通过insert ()方法可以在指定位置插入元素。( )
正确 错误
三、编程题(共3题,共30分)
36. 体育社团活动,老师首先让社团小组成员按从低到高顺序排成一队站好,小明站在队中,发现和他同样身高的有3人,他想知道,当前社团小组的队列中,具有相同身高的最多人数。 给出社团小组的每个成员身高信息,请你帮忙编写程序输出相同身高的最多人数。
输入格式:
输入共1行,若干个有序数值(从小到大),互相之间以空格隔开。
输出格式:
输出共1行,1个整数,表示相同身高的最多人数。
输入样例:
120 123 123 125 125 125 126 126 126 126 127 127 129 130
输出样例:
4
a=[int(i) for i in input(). ① ]
n=len(a)
k,maxn=1,1
for i in range(1,n):
if a[i] == ② :
k+=1
else:
③
maxn=max( ④ )
print(maxn)
37.
文学社团组织一次英语实践活动,每个参与活动的同学都分发到一个英文字符串,所有字符为小写字母,活动任务是找出字符串中的最长回文子串。
如果有多个相同长度的回文子串,输出其中任意一个即可。
例如:
“aykkyu”中最长回文子串是“ykky”。
“helloacmcbjbky”中最长回文子串有2个“cmc”“bjb”。
输入格式:
共1行,1个字符串,长度不超过50。
输出格式:
共1行,1个字符串,最长回文子串。
输入样例:
aykkyu
输出样例:
ykky
s=input()
n= ①
flag=1
for j in range(n,0, ② ):
for i in range(0,n-j+1):
x=s[i:i+j]
y= ③
if(x== ④ ):
print(x)
flag=0
break
if(flag==0):
break
break
38. 假设字典dic_city存放每个人想去旅游的城市,小明想去厦门、成都、大理。小李想去大理、广州。小张想去三亚、大理、青岛、上海。
(1)统计每个人想去旅游的城市数目。
(2)统计想去大理的人数以及名单。
根据上述算法思想,补全下列代码。
dic_city={"小明":["厦门","成都","大理"],"小李":["大理","广州"],"小张":["三亚","大理","青岛","上海"]}
for k,v in ① :
print("{}想去{}个城市旅游". ② )
name=[]
for k,v in dic_city.items():
if "大理" in ③ :
name. append(k)
print("想去大理旅游的有{}人,他们是{}".format(len(name) ,"、". ④ ))