试卷 2024年3月青少年软件编程Python等级考试(五级)真题试卷
2024年3月青少年软件编程Python等级考试(五级)真题试卷
选择题
第 1 题    单选题

以下代码的输出结果是?( )

nums = list(range(100, 201))

print(nums[::10])

A.

[100, 110, 120, 130, 140, 150, 160, 170, 180, 190, 200]

B.

[100, 101, 102, 103, 104, 105, 106, 107, 108, 109, 200]

C.

[100, 111, 122, 133, 144, 155, 166, 177, 188, 199]

D.

[199, 188, 177, 166, 155, 144, 133, 122, 111, 100]

第 2 题    单选题

以下代码的输出结果是?( 

def count_odd_numbers(n):
    return len([num for num in range(n) if num % 2 != 0])
print(count_odd_numbers(20))
A.

5

B.

8

C.

10

D.

15

第 3 题    单选题

以下Python代码的输出结果是?( )

for i in range(5):
    print(' '*(5-i) + '*'*(2*i+1))
A.

错误,代码无法运行

B.

打印出一个梯形状的星星

C.

打印出一个倒立的三角形

D.

打印出一个正立的三角形

第 4 题    单选题

运行以下Python代码的结果是?( 

nums = range(1, 11)
sliced_nums = nums[2:8]
result = sum(sliced_nums) * 3
print(result)
A.

90

B.

99

C.

81

D.

72

第 5 题    单选题

集合a={1,2,3,4,5,6}b={1,3,5,7,9},则a&b的结果是?( )

A.

{1, 3, 5}

B.

{2, 4, 6}

C.

{1,2,3,4,5,6,1,3,5,7,9}

D.

[1, 3, 5]

第 6 题    单选题

下列程序的运行结果?( 

a={6,5,4,3,2,1}
a.remove(1)
print(a)
A.

{6,5,4,3,2}

B.

{1,2,3,4,5}

C.

(6,5,4,3,2)

D.

[2,3,4,5,6]

第 7 题    单选题

智慧种植社团想要确定农植园西红柿元组的最大值,可以使用下列方法?( 

A.

list()

B.

max()

C.

min()

D.

sum()

第 8 题    单选题

统计黑色"black"在当前pen元组中出现的次数

pen=('blue','black','red','black','blue','black')

print(pen.count('black')) 

输出的结果是?( )

A.

1

B.

3

C.

5

D.

6

第 9 题    单选题

科学课上,王老师做了一个实验,一张纸对折1次厚度是原来的2倍,对折2次厚度是原来的4倍,对折3次厚度是原来的8倍,…依此类推,对折n次后,厚度是原来的多少倍?( )

A.

ans=math.pow(10,n)

B.

ans=math.comb(n,2)

C.

ans=math.factorial(n)

D.

ans=math.pow(2,n)

第 10 题    单选题

有关中文分词jieba库的描述,错误的是?( )

A.

jieba.add_word(w)向分词词典中增加新词w

B.

jieba.lcut(s)返回的可能是一个字符串类型

C.

jieba.cut(s)返回的可能是一个可迭代的数据类型

D.

jieba库的分词原理是利用中文词库,将待处理的内容与词库比对后找到最大概率的词组

第 11 题    单选题

石头剪刀布游戏,规则如下:石头胜剪刀,剪刀胜布,布胜石头。编写 Python 程序模拟石头剪刀布游戏,并判定游戏的输赢,代码中数字 0 代表石头,数字 1 代表剪刀,数字 2 代表布。模拟玩家A出拳的python程序代码是?( )

A.

random.uniform(0,3)

B.

random.randint(0,2)

C.

random.sample(2,1)

D.

random.seed()

第 12 题    单选题

Pythonwordcloud库把词云当作一个WordCloud对象。

向阳小学阅读社团计划编写一个读书笔记的词云,根据笔记的数量,计划使用以下哪个指令自定义设置词云的图片尺寸参数?(

A.

wordcloud.WordCloud(font_step=5)

B.

wordcloud.WordCloud(width=1600,height=800)

C.

wordcloud.WordCloud(max_words=20)

D.

wordcloud.WordCloud(min_font_size=10)

第 13 题    单选题

以下哪个选项可以添加一个键值对到字典中?( 

A.

my_dict.add(key, value)

B.

my_dict[key] = value

C.

my_dict.append(key, value)

D.

my_dict.insert(key, value)

第 14 题    单选题

以下哪个选项可以删除字典中指定的键值对?( 

A.

my_dict.remove(key)

B.

del my_dict[key]

C.

my_dict.clear(key)

D.

my_dict.delete(key)

第 15 题    单选题

执行下列Python代码的结果是?( 

>>> a = "3.1415926"
>>> b = 6
>>> c = "<"
>>> print("{0:{2}.{1}}".format(a,b,c))
A.

3.1415926

B.

003.14

C.

3.1415

D.

003.141

第 16 题    单选题

字符串变量str = 'Wfall0343',执行语句print(str.find('3')),输出的结果是?( )

A.

6

B.

8

C.

3

D.

7

第 17 题    单选题

print('\x68')的结果是?( )

A.

\x68

B.

68

C.

x68

D.

h

第 18 题    单选题

str1 = '*@python@*', 语句print(str1[1:].strip('@'))的执行结果是?( )

A.

python@*

B.

python*

C.

*@python@*

D.

* python*

第 19 题    单选题

Python程序段如下:

s=["seasons","spring","summer","fall","winter"]
print(s[1][2:6])

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

A.

ring

B.

pring

C.

eason

D.

easo

第 20 题    单选题

Python程序段如下:

lis=[11,22,33,44,55]
lis[2],lis[3]=lis[3],lis[2]
print(lis)

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

A.

[11,22,33,44,55]

B.

[11,22,22,33,55]

C.

[11,22,44,33,55]

D.

[11,33,33,44,55]

第 21 题    单选题

已知列表Lista[1,2,3,4],执行语句Lista[2]Lista后,列表Lista中的元素为?( )

A.

[3,4,5,6]

B.

[1,2,3,4,2]

C.

[1,2,2,3,4]

D.

[2,1,2,3,4]

第 22 题    单选题

已知list1list("php"),执行语句list1[2]list("Python")后,列表list1中的内容为?( )

A.

['p''h''p''P''y''t''h''o''n']

B.

['p''P''y''t''h''o''n']

C.

['p''h''P''y''t''h''o''n']

D.

['P''y''t''h''o''n']

第 23 题    单选题

Python程序段如下:

import random
a=[random.randint(1,5)*2 for i in range(5)]
print(a)

程序运行后,输出结果不可能是?( 

A.

[4,4,8,10,8]

B.

[8,8,2,4,2]

C.

[2,5,6,8,4]

D.

[2,4,6,8,10]

第 24 题    单选题

Python程序段如下: 

l= ["python" +i+"级" for i in "一二三四五六"]
print(l[4])

程序运行后,输出结果是?( 

A.

python二级

B.

python三级

C.

python四级

D.

python五级

第 25 题    单选题

闰年是公历中的名词,分为普通闰年和世纪闰年。普通闰年是4年一次,若公历年份是4的倍数且不是100的倍数则为普通闰年(如2004年、2020年就是普通闰年),现在想输出1949年到今年(2024年)之间的所有普通闰年,正确的列表推导式是?( )

A.

print([i for i in range(1949,2025)if i %4==0 and i%100!=0])

B.

print([i for i in range(1949,2025)if i %4!=0 and i%100!=0])

C.

print([for i in range(1949,2025)if i %4==0 and i%100=0])

D.

print([for i in range(1949,2025)if i %4!=0 and i%100=0])

判断题
第 26 题    判断题

以下代码的输出结果是 48。( )

nums = range(1, 9)

result = sum([num for num in nums if num % 3 != 0]) * 2 - 6

A.
正确
B.
错误
第 27 题    判断题

Python中,可以仅仅使用一对空的花括号{}来创建集合。( )

A.
正确
B.
错误
第 28 题    判断题

无法通过引用索引来访问集合中的元素,但是可以用for循环来遍历集合中的元素。( )

A.
正确
B.
错误
第 29 题    判断题

科技社团将个人信息定义为元组,使用小括号,数据可以是不同的数据类型,各个数据之间用逗号隔开。( 

A.
正确
B.
错误
第 30 题    判断题

Jieba是优秀的中文分词第三方库,jieba.cut(s)精确模式,可以把文本精确的切分开,不存在冗余单词。( )

A.
正确
B.
错误
第 31 题    判断题

字典中的键必须是唯一的,但值可以重复。( 

A.
正确
B.
错误
第 32 题    判断题

print('It's a wonderful day!')的结果是It's a wonderful day!。( )

A.
正确
B.
错误
第 33 题    判断题

str="This is a disposable cup"

sub="is" 

print(str.rfind(sub))的结果为5。( )

A.
正确
B.
错误
第 34 题    判断题

有列表a=[1,2,3],b=a*3,执行语句print(len(b))输出结果是9。( )

A.
正确
B.
错误
第 35 题    判断题

小明想在变量a中存储26个小写字母,但他不想手动输入,可以使用列表推导式[chr(i+97)for i in range(26)]实现。( )

A.
正确
B.
错误
编程题
第 36 题    问答题

火柴棍游戏

用火柴棍拼成数字0~9,具体拼法如图所示:

编写Python程序,实现输入火柴棍的数量,输出符合该火柴棍数的三位数组合,若找不到,则输出“没有符合要求的数”,见样例,程序如下: 

请在划线处填入合适代码。

code={0:6,1:2,2:5,3:5,4:4,5:5,6:6,7:3,8:7,9:6}
num=int(input("请输入火柴棍数量:"))
flag=False
for i in range(        ①        ):
    if         ②        +code[i//10%10]+        ③         ==num:
        print("可以组成的三位数:",i,sep="")
        flag=True
if          ④        :
    print("可以组成的三位数:","没有符合要求的数",sep="")
第 37 题    问答题

得分处理

智龙是一名篮球队的教练,为了方便对球员进行精准分析,他需要记录球队每个队员的得分,并按照得分从高到低进行排序。请你帮助他完成以下任务:

1)创建一个空的列表 scores,用于存储队员的得分;

2)使用循环,依次输入每个队员的得分,将得分添加到 scores 列表中;当输入“stop”时停止输入。

3)使用 sorted() 函数对 scores 列表进行排序,得到一个新的列表 sorted_scores,按照得分从高到低排序;

4)打印出排序后的队员得分。

程序代码如下,请你补全Python代码。

scores=        ①        
while True:
    score =        ②        ("请输入队员的得分(输入stop字符串结束):")
    if score == "stop":
             ③        
    scores.append(int(score))
sorted_scores =        ④        
print("排序后的队员得分:", sorted_scores)
第 38 题    问答题

知识竞赛活动

 学校开展“学宪法"知识竞赛活动,其中有一项任务为完成“学宪法”答卷记得分。答卷含有5个客观题和5个主观题,其中客观题1-4题为单选题,第5题为多选题,单选题每题分值为2分;多选题全对得2,漏选、少选得1,多选错选不得分。为了提高改卷效率,学校信息技术组的老师设计并编写了一个Python小程序,输入客观题正确答案和答卷上的答案,即可计算得分。实现上述功能的Python程序如下,运行界面如图所示。

 

请输入客观题(5道)标准答案:AABDACD

请输入客观题(5道)题学生答案:ABBDAC

该学生客观题得分为:7

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

 

def judge(x,y):
 
    f=True
 
    i=0
 
    while i<len(y):
 
        if y[i] not in x:
 
                    ①        
 
            break
 
        i+=1
 
    return f
 
num=0
 
key=input("请输入客观题(5道)标准答案:")
 
s=input("请输入客观题(5道)题学生答案:")
 
for j in range(5):
 
    if j==4:
 
        if key[j:len(key)]==s[j:len(s)]:
 
            num+=2
 
        elif        ②        :
 
            num+=1
 
    else:
 
        if s[j]==key[j]:
 
                    ③        
 
print("该学生客观题得分为:"+        ④        +"分")

答题卡
选择题
判断题
编程题
36 37 38
题目总数:38
总分数:100
时间:90分钟