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

以下哪个方法用于向字典中添加或修改键值对?( )

2.

下列哪个操作不是字典类型的标准方法或属性?( )

3.

集合类型中用于向集合中添加多个元素的方法是?( )

4.

若有一个集合 s = {1, 2, 3, 4},要删除集合中的元素2,以下哪个操作是正确的?( )

5.

下面Python程序运行结果是?( )

s=(1,2,3,4,[5,6])
s[4][1]=7
print(len(s))
6.

执行下面Python程序段输出结果?( )

>>>import math
>>>math.gcd(16,24)
7.

执行下列python程序语句,输出结果说法正确的?( )

>>>import random
>>>random.randint(1,100)
8.

Python中,下列哪个选项是random库中用于生成随机浮点数的函数?( )

9.

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

>>>import math
>>>math.pow(2,4)
10.

有如下Python程序,请问程序执行结果是?( )

 tup1=([1,2],12,'ab')
tup1[0][1]=23
print(tup1[0][1])
11.

为使程序段1和程序段2实现相同的功能,可在划线处填写的Pytho代码是?( )

#程序段1
s=0
 
t=1
 
while t<=6:
 
    s=s+t
 
    _______________
 
print(s)
 
#程序段2
 
s=0
 
for t in range(1,7,2):
 
    s=s+t
 
print(s)

12.

若变量 x 的值为“IT”,变量 y 的值为“技术”,则运行python代码 print(x*2+y),输出的结果是?( )

13.

字符串a="Happy New Year",则表达式a.find("a")的值是?( )

14.

有变量a="张三",b="李四",c=10,下列语句不能正确输出“张三和李四是好朋友,他们认识10年了!”的是?( )

15.

如下Pthon程序段,可实现输入二进制数,转化成十进制结果。则划线处①代码可填?( )

b=input("请输入二进制数:")
 
b=_____①_____
 
d=0
 
for i in range(len(b)):
 
    d+=int(b[i])*2**i
 
print("十进制结果是:",d)
16.

表达式len(range(1,10))的值是?( )

17.

某Python程序段如下,若想知道0~1000之间(包括0和1000)所有5的倍数的数字之和,划线处应填入的语句是?( )

 s=0
for i in range(________):
    s=s+i
print(s)
18.

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

s="United by Emotion"
s1=""
for i in range(0,len(s),4):
    c=s[i]
    if ord(c)>=ord("a"):
        c=chr(ord(c)-ord("a")+ord("A"))
        s1=c+s1
print(s1)
19.

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

 alist=list(range(1,10))

print(alist[1::3])


20.

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

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

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

alist=[1,2,3,4,5]
blist=','.join(str(n) for n in alist)
print(blist)
22.

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

alist=['语文','数学','编程']
blist=['96','98','100','95']
c=list(zip(alist,blist))
print(c)
23.

小森在收集考试报名数据时,经常遇到姓名前后有空格的情况。他想利用Python语言写一段程序帮助自己获得准确的数据。

他想利用集合推导式来创建一个集合,保存处理好的姓名数据。请选择最合适的一个选项中的语句?( )

24.

下列选项中,与列表推导式my_list=[n**2 for n in range(6)]功能不相同的是?( )

25.

下面是一段关于生成器推导式的Python代码,运行该代码段后的输出结果是?( )

ge=(kemu for kemu in ('语文','数学','英语','编程'))
print(list(ge))
print(tuple(ge))
print(set(ge))
判断题 共 10 题
1.

字典中的键必须是唯一的。( )

2.

集合类型中的元素不允许重复。( )

3.

要判断一个元素是否在集合中,可以使用 in 关键字,如:x in s。( )

4.

元组t=([1,2],'a','b')执行语句t[0][2]=3,元组t=([1,2,3],'a','b')。( )

5.

函数 time.time() 用于获取当前时间戳,时间间隔是以小时为单位的浮点小数。( )

6.

表达式"Python2024">"python"返回值为True。( )

7.

某Python程序段如下,执行之后,输出内容为hello,java,java,python。( )

s1="hello,python,python,python"
prnt(s1.replace("python", "java", 2))
8.

运行下列Python代码,输出结果为0。( )

a=[6,6,6]
b=a.remove(6)
c=a.count(6)
print(c)
9.

序列解包可以用在列表、元组等序列数据类型对象中,字典这种映射数据类型不可以用。( )

10.

可以直接使用list(range(5))将其转换为列表[0, 1, 2, 3, 4]。( )

问答题 共 3 题
1.

记录任务

题目描述:小明想编写一个Python程序来记录他每天的学习任务完成情况。他希望在输入每天完成的任务个数后,能够查看一周内完成任务的总情况。为了实现这个目标,请在下面程序空白处填上正确内容以实现程序功能。

要求:

(1)小明依次输入一周内每天完成的任务数,程序将这些任务记录下来;

(2)程序会逐个输出一周内的任务完成情况,以及统计并输出一周内完成的任务总数。

tasks = []
for i in range(1, 8):
    task =        ①        ("请输入第{}天完成的任务:".format(i))
 
            ②        
 
print("一周内的任务完成情况如下:")
for i in range(7):
    print("第{}天完成的任务:{}".format(        ③        , tasks[i]))
total_tasks = sum(int(task) for task in tasks)
print("一周内完成的任务总数为:",         ④        )

2.

注册用户

一个网站在注册新用户时,对用户名和密码的要求如下:

(1)用户名必须是以数字1开头的11位纯数字;例如:12345678912

(2)密码长度6——20,必须包含英文字母、数字。例如:python123

(3)输入一个QQ邮箱,以备找回密码。例如147258369@qq.com,qq号为纯数字,以qq.com结尾。

小华编写一个Python程序,首先验证一下准备使用的账号密码是否符合该网站的要求。

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

name=input('请输入准备使用的账号:')
password=input('请输入准备使用的密码:')
mail=input('请输入准备使用的邮箱:')
name_check=False
password_check=False
mail_check=False
if name.isdigit() and len(name)==11 and        ①        :
    name_check=True
if password.isalnum() and (        ②        ):
    password_check=True
if mail.endswith("@qq.com"):
    mail_name=        ③        
    if mail_name.isdigit():
        mail_check=True
if name_check and password_check and mail_check:
    print('账号、密码、邮箱均符合要求,可以注册!')
elif name_check==False:
    print('账号不符合要求,请重新填写!')
elif         ④        :
    print('密码不符合要求,请重新填写!')
elif mail_check==False:
    print('邮箱不符合要求,请重新填写!')
else:
    print('未知情况,请重新填写!')


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

请输入准备使用的账号:12345678912

请输入准备使用的密码:python123

请输入准备使用的邮箱:147258369@qq.com

账号、密码、邮箱均符合要求,可以注册!

3.

参赛作品

小林为选出班级中平均分最高的参赛作品,编写Python程序,算法设计如下:

(1)5位评委对3个作品的评分数据存储在列表data中(数据由3位十进制数组成,第1位对应作品号,后2位对应作品得分,如“275”表示2号作品得分75)

(2)统计并输出3个作品的平均分(保留一位小数),选择平均分最高的作品为参赛作品,若最高平均分存在并列,则输出全部并列的最高平均分作品号。程序运行界面如下图所示。 

程序如下。请在划线处填入合适的代码: 

data=[180,283,385,170,276,384,180,285,380,190,295,390,170,272,372]
 
s={1:0,2:0,3:0} 
ans=[]
max_zp=0
for c in data:
 
    zp=        ①        
    fs=c%100
            ②        
for i in range(1,4):
            ③        
    print('作品',i,'平均分为',s[i])
    if s[i]>max_zp:
        max_zp=s[i]
for i in range(1,4):
    if           ④        :
        ans.append(i)
 
print('平均分最高作品号是:',ans)

C++ 编辑器
输入
输出