202409 青少年软件编程等级考试Python五级真题 建议答题时长:60min
1. 单选题

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

A

dict.append()

B

dict.update()

C

dict.remove()

D

dict.insert()

2. 单选题

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

A

dict.keys()

B

dict.getall()

C

dict.items()

D

dict.values()

3. 单选题

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

A

extend()

B

Add()

C

update()

D

add()

4. 单选题

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

A

s.remove(2)

B

s.delete(2)

C

s.pop()

D

s.pop(2)

5. 单选题

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

 

s=(1,2,3,4,[5,6])

 

s[4][1]=7

 

print(len(s))

A

2

B

5

C

6

D

4

6. 单选题

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

 

>>>import math

 

>>>math.gcd(16,24)

A

8

B

16

C

24

D

32

7. 单选题

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

 

>>>import random

 

>>>random.randint(1,100)

A

输出结果为1到100的随机整数,包括1但不包括100

B

输出结果为1到100的随机整数,包括1和100

C

输出结果为1到100的随机整数,不包括1和100

D

输出结果为1到100的随机整数,不包括1但包括100

8. 单选题

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

A

randint()

B

randrange()

C

random()

D

getrandbits()

9. 单选题

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

 

>>>import math

 

>>>math.pow(2,4)

A

8.0

B

8

C

16

D

16.0

10. 单选题

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

 

tup1=([1,2],12,'ab')

tup1[0][1]=23

print(tup1[0][1])

A

1

B

2

C

23

D

程序出现错误

11. 单选题

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

#程序段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)

A

t=2

B

t=6

C

t=t+1

D

t=t+2

12. 单选题

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

A

IITT技术

B

IT2技术

C

IT*2+技术

D

ITIT技术

13. 单选题

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

A

1

B

2

C

1,4

D

2,5

14. 单选题

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

A

print("%d和%d是好朋友,他们认识%d年了!"%(a,b,c))

B

print(a +"和" + b +"是好朋友,他们认识"+str(c) +"年了!")

C

print("{}和{}是好朋友,他们认识{}年了!".format(a,b,c))

D

print("%s和%s是好朋友,他们认识%d年了!"%(a,b,c))

15. 单选题

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

b=input("请输入二进制数:")

b=_____①_____

d=0

for i in range(len(b)):

    d+=int(b[i])*2**i

print("十进制结果是:",d)

A

b[:﹣1]

B

b[﹣1::1]

C

b[::﹣1]

D

b[len(b)﹣1:0:﹣1]

16. 单选题

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

A

9

B

10

C

1

D

2

17. 单选题

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

s=0

for i in range(________):

    s=s+i

print(s)

A

5,1001,5

B

5,1001,1

C

5,1000,5

D

5,1000,1

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)

A

UEYON

B

NOYE

C

EYON

D

UEEI

19. 单选题

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

 

alist=list(range(1,10))

print(alist[1::3])

A

[0, 3, 6]

B

[1, 4, 7]

C

[2, 5, 8]

D

[3, 6, 9]

20. 单选题

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

alist=[3,6,9]

for i in alist[::-1]:

   print(i,end=',')

A

3,6,9,

B

3,6,9

C

9,6,3

D

9,6,3,

21. 单选题

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

alist=[1,2,3,4,5]

blist=','.join(str(n) for n in alist)

print(blist)

A

1,2,3,4,5

B

1 2 3 4 5

C

[1,2,3,4,5]

D

"1,2,3,4,5"

22. 单选题

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

alist=['语文','数学','编程']

blist=['96','98','100','95']

c=list(zip(alist,blist))

print(c)

A

[['语文', '96'], ['数学', '98'], ['编程', '100']]

B

[('语文', '96'), ('数学', '98'), ('编程', '100')]

C

[('语文', 96), ('数学', 98), ('编程', 100)]

D

(('语文', '96'), ('数学', '98'), ('编程', '100'))

23. 单选题

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

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

A

print({i.lstrip() for i in (' 刘备','关羽 ',' 张飞 ')})

B

print({i.rstrip() for i in (' 刘备','关羽 ',' 张飞 ')})

C

print({i.strip() for i in (' 刘备','关羽 ',' 张飞 ')})

D

print({i.split() for i in (' 刘备','关羽 ',' 张飞 ')})

24. 单选题

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

A

list1=[n**n for n in range(6)]

list2=[]

B

for n in range(6):

   list2.append(n*n)

C

list3=list(map(lambda n:n**2,range(6)))

D

list4=list(map(lambda n:pow(n,2),range(6)))

25. 单选题

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

ge=(kemu for kemu in ('语文','数学','英语','编程'))

print(list(ge))

print(tuple(ge))

print(set(ge))

A

['语文', '数学', '英语', '编程']  

('语文', '数学', '英语', '编程')

{'语文', '数学', '英语', '编程'}

B

['语文', '数学', '英语', '编程']

('语文', '数学', '英语', '编程')

set()

C

['语文', '数学', '英语', '编程']

()

set()

D

['语文', '数学', '英语', '编程']

()

{}

26. 判断题

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

A

B

27. 判断题

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

A

B

28. 判断题

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

A

B

29. 判断题

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

A

B

30. 判断题

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

A

B

31. 判断题

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

A

B

32. 判断题

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

s1="hello,python,python,python"

print(s1.replace("python", "java", 2))

A

B

33. 判断题

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

a=[6,6,6]

b=a.remove(6)

c=a.count(6)

print(c)

A

B

34. 判断题

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

A

B

35. 判断题

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

A

B

36. 编程题

记录任务

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

要求:

(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("一周内完成的任务总数为:",         ④        )

查看答案
37. 编程题

注册用户

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

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

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

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

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

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

 

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

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

查看答案
38. 编程题

参赛作品

小林为选出班级中平均分最高的参赛作品,编写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)

查看答案
试题目录
单选题
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
判断题
26 27 28 29 30 31 32 33 34 35
编程题
36 37 38
赣ICP备20007335号-2