2025年9月青少年软件编程Python等级考试(五级)真题试卷
剩余时间 --:--:--
单选题 共 25 题
1.

Python中,运行以下代码,选择正确的输出结果? ( )

group_a = (85, 92, 88)
group_b = (90, 87, 93)
combined = group_a[:2] + group_b[-1:]
print(combined[2])
2.

Python中运行以下代码,选择正确的输出结果? ( )

scores = (85, 90, 85, 78, 90, 85)
count = scores.count(85)
3.

小红用集合记录了自己已选修的课程courses = {"数学", "英语"},她想一次性添加三门新课:"人工智能", "大数据", "物联网"。以下代码正确的是?( )

4.

学校运动会中,班级A报名了项目集合sports_A = {"田径", "游泳", "篮球"},班级B报名了sports_B = {"游泳", "足球", "羽毛球"}。体育老师需要统计两个班级一共报名了多少个不同的项目,应该使用以下哪种方法?( )

5.

Python中,如何高效地将字符串s='Hello World!'转换为全小写形式? ( )

6.

Python中,执行下列语句,运行的结果分别是?( )

>>> s='I love python!'
>>> s.find('o')
   ?
>>> s.rfind('o')
   ?
7.

Python%格式化方法的常用符号里,哪一个是转换十进制整数? ( )

8.

有如下Python程序:

s='AB122CCC333DDEFF'
c=0
for i in s:
    if '0'<=i<='9':
        c+=1
print(s[c:c+3])

则程序运行的结果是?

9.

Python程序段如下:

tup=(i for i in range(50))
c=0
for i in tup:
    if i%3==0 and i%7==0:
        c+=1

程序运行后,输出的结果c的值是? ( )

10.

Python中,使用列表生成式生成一个包含120的奇数的列表,不正确的代码是? ( )

11.

使用字典生成式创建一个将小写字母映射为对应ASCII码的字典,正确的代码是?( )

12.

小吴正在编写一个程序,用于计算110的整数中符合条件的数的和。以下是他的代码:

sum1 = 0
for i in range(1, 11):
    if i % 3 == 0 or i % 5 == 0:
        sum1 += i
print(sum1)

请问这段代码的输出结果是什么?(

13.

小赵正在编写一个程序,以下是他的代码:

for i in range(1, 11):
    if i % 3 == 0:
        print(i,end=',')

请问这段代码的输出结果是什么?(

14.

小李正在编写一个程序,用于打印出西游记里的人物。以下是他的代码:

RenWu = ["唐僧", "孙悟空", "猪八戒", "沙和尚", "白龙马"]
for i in range(-4,0):
    print(RenWu[i])

请问这段代码的输出结果是?

15.

小华正在编写一个程序,用于打印出从10楼到1楼的楼层号,10, 9, 8, 7, 6, 5, 4, 3, 2, 1。以下是他的代码:

for floor in range(_______):
    print(floor)

请问横线上需要填写的参数是?

16.

小明正在编写一个程序,用于计算某个物品的重量(以千克为单位),向下取整到最接近的整数。以下是他的代码,如果输出结果为7,则横线上的代码应为?( )

import math
weight = 7.8
floor_weight = ________
print(floor_weight)
17.

将下列选项中的代码填入横线上,不能实现随机选择一个水果作为今天的特价水果的是?

import random
fruits = ["apple", "banana", "cherry"]
today_fruit = __________
print(today_fruit)
18.

小华正在编写一个程序,用于对用户输入的中文评论进行分词处理。他使用jieba模块的lcut()函数来分词。以下是他的代码:

import jieba
text = "这个手机真的很好用"
words = jieba.lcut(text)
print(words)

请问这段代码的输出结果是什么?(

19.

小华正在编写一个程序,他想用wordcloud库生成一个词云图,展示一篇英文文章中出现频率最高的词汇。他希望将词云图生成为一个心形,那么他必须要设置词云对象的哪个参数? ( )

20.

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

a=[1,3,5,6,9] 
for i in a[::-1]: 
    print(i,end=',')
21.

运行下列Python代码,输出结果是?( )

a=['张三','李四','王五']
b=['96','98','100','95']
c=list(zip(a,b))
print(c)
22.

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

a=list(range(10))
print(a[1::3])c
23.

假设有一个列表a=[1,2,3,4,5],下面哪个操作可以移除列表中的第一个元素? ( )

24.

以下哪个选项能正确地删除字典中的元素?(

25.

执行以下代码后,字典 d1 的内容是? ( )

d1 = {'x': 1, 'y': 2} 
d2 = {'y': 3, 'z': 4} 
d1.update(d2)
判断题 共 10 题
1.

创建只包含一个元素的元组时,必须在该元素后添加逗号,例如t = (5,)。( )

2.

班级的选修课名单存储为集合course = {"Python编程", "数据分析"}。小红误操作输入了代码course.add("Python编程"),她认为这会导致集合中出现重复元素。( )

3.

编程课上,小刘写了下面一段代码 ,他认为可以成功将列表 [4, 5] 作为元素添加到集合中。( )

my_set = {1, 2, 3}
my_set.add([4, 5])
4.

Python中,执行以下语句输出的结果是'i like banana'。( )

>>> s='i like apple'
>>> s.replace('apple','banana')
>>> s
5.

Python中,"{0} {1:.2f}".format("Total", 123.4567)会生成字符串"Total 123.46"。( )

6.

Python中,列表推导式[x*y for x in range(3) for y in range(3) if x*y!=0]生成的结果为[1, 2, 2, 4]。( )

7.

Python中,下面这段代码的输出结果是{1: 0, 2: 0, 3: 0, 4: 0, 5: 0}。( )

student_scores = dict.fromkeys(range(1, 6), 0)
print(student_scores)
8.

Python中,假设当前时间是20251015日,下午34530秒,运行下面这段代码的输出结果是2025-10-15 15:45:30 ( )

from datetime import datetime
current_time = datetime.now()
formatted_time = current_time.strftime("%Y-%m-%d %H:%M:%S")
print(formatted_time)
9.

字典的元素在内存中是无序存储的。(

10.

列表ls=[0,1,2,3,4],则表达式ls[::-1][-1]的结果与ls[1]相同?( )

问答题 共 3 题
1.

寻找缺失数

在一个学校的年度校园活动中,组织者需要为参与者分配不同的编号,以便进行抽奖和其他活动。他们决定使用长度为n-1的列表a来存储参与者的编号,这些编号是从1n的整数,且没有重复。

现在,他们需要找出在区间[1,n]范围内没有出现在列表a中的那个整数,以便为这个编号进行特别的奖励。如当n=5时,a[0]=5a[1]=4a[2]=1a[3]=3时,列表a中缺失的数为2。程序输出结果如下所示:

----------程序运行结果----------

请输入一个整数n:5
[5, 4, 1, 3]
列表中缺失的数为: 2
Python代码如下,请在划线处填上合适的代码.
from random import randint
n=int(input("请输入一个整数n:"))
a=[]
c=1
while c<n:
     x=randint(1,n)
     if    ①   :
         a.append(x) 
          ②  
s=n*(n+1)//2    #s得到1~n的累加和
for i in range(n-1):   
       ③    
print(a)
print('列表中缺失的数为:',s)
2.

状态关键词

小李将一个月内某平台上每天的状态关键词(美滋滋、忙、疲惫......)保存在了文本文件"state.txt"中,现在他编写了一个Python程序,用来统计一个月内出现次数最多的状态关键词及次数,如果有多个状态关键词并列最多,则输出第一个。

具体思路如下:

1)将文本文件中的状态关键词通过jieba模块进行分词,并保存在列表中;

         分词结果:

        ['美滋滋', '裂开', '运动', '疲惫', '发呆', '', '学习', '学习', '胡思乱想', '', '元气', '美滋滋', '美滋滋', '美滋滋', '美滋滋', '美滋滋', '裂开', '运动', '疲惫', '发呆', '', '胡思乱想', '元气', '裂开', '运动', '', '美滋滋', '美滋滋', '发呆', '摸鱼', '回家']

2)通过字典统计每个状态关键词的出现次数;

3)通过比较,找出出现次数最多的状态关键词。

       输出结果:

      出现最多的状态是: 美滋滋 次数为: 8

实现上述功能的Python程序如下,请在划线处填入合适的代码。

"""
import jieba
txt=open("/data/state.txt","r",encoding="utf-8").read()
words=jieba.   ①  (txt)        #jieba模块分词的结果存放在列表中
"""
words=['美滋滋', '裂开', '运动', '疲惫', '发呆', '冲', '学习', '学习', '胡思乱想', '忙', '元气', '美滋滋', '美滋滋', '美滋滋', '美滋滋', '美滋滋', '裂开', '运动', '疲惫', '发呆', '冲', '胡思乱想', '元气', '裂开', '运动', '忙', '美滋滋', '美滋滋', '发呆', '摸鱼', '回家']
maxlen=1     #变量maxlen存放最多出现次数
maxd=0       #变量maxd存放最多出现次数的状态关键词在列表中的位置
dic={}         #字典dic存放每个状态关键词及其出现次数
i=0
while i<len(words):
    if words[i] not in dic:
          ②  
    else:
        dic[words[i]]+=1
        if   ③   :
            maxd=i
            maxlen=dic[words[i]]
    i+=1
 
print("出现最多的状态是:",   ④   ,"次数为:",maxlen)
3.

纠错处理

在人工智能对话系统中,用户键盘输入有时会出现重复按键现象(例如:"Hiiiii!")。现需要编写程序对输入文本进行规范化处理:将连续重复的字符压缩为单个字符。给定一个由大小写字母和标点符号组成的字符串(长度不超过1000),请将其中所有连续重复出现的字符压缩保留第一个字符,输出处理后的字符串。

例如:

输入:Hiiiii!  Howwww are youuuu???

注:输入的字符串仅包含大小写英文字母、空格和常见标点符号(!?.,等)

输出:Hi! How are you?

下面是小明编写的代码,请你将空白内容补充完整。

while True:
    input_text = input("请输入需要处理的字符串:(输入p结束!) ")
    if  ①  :
       break
    else:
        result = [input_text[0]]
        for char in input_text[    ②   :]:
            if char != result[  ③   ]:
                result.append(char)
        result = ''.join(   ④  )
    print(result)
C++ 编辑器
输入
输出