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

下列程序为倒序输出列表的元素,则在①处应填入?

lst = [1, 4, 5, 7, 9]
for i in range( ① ):
    print(lst[i])
A.

len(lst)-1, -1, -1

B.

len(lst)-1, 0, -1

C.

len(lst), -1, -1

D.

len(lst)-1, -1

第 2 题    单选题

下列程序为降序输出1—>100所有偶数,则在①处应填入?

for i in range(  ① ):

    print(i)

A.

101,2,-2

B.

100,1,-2

C.

2,101,-2

D.

2,100,-2

第 3 题    单选题

下列程序为求1—>100所有偶数之和,则在①处应填入?

ans = 0
for i in range(  ① ):
    ans += i
print(ans)
A.

1,100,2

B.

1,101,2

C.

2,101,2

D.

2,100,2


第 4 题    单选题

下列的程序为求10的阶乘,则在①处应填入的是?

ans = 1
for i in range(  ① ):
    ans *= i
print(ans)
A.

10

B.

1,10

C.

11

D.

1,11

第 5 题    单选题

Python中 print("八进制{:o}".format(12)) 正确的输出结果是?

A.

八进制:O

B.

八进制:O14

C.

八进制14O

D.

八进制14

第 6 题    单选题

运行下列语句,输出的结果是?
nums = [i * i for i in range(1, 10) if i % 3 == 0]
print(nums)

A.

[1, 4, 9, 16, 25, 36, 49, 64, 81]

B.

[9, 36, 81]

C.

[3,6,9]

D.

[4, 16, 36, 64]

第 7 题    单选题

已知一个元组t= ('x', 'y', ['X', 'Y'])。执行如下代码后,输出的结果是?

t[2][0] = 'xx'
t[2][1] = 'yy'
print(t)


A.

元组t不发生变化,仍为('x', 'y', ['X', 'Y'])。

B.

结果为:('x', 'y', ['xx', 'yy'])

C.

结果为:('x', 'y', 'xx', 'yy')

D.

运行时错误

第 8 题    单选题

元组变量name=("张三","李四","小明","小红"),则name[::-1]的运行结果是?

A.

('小红', '小明', '李四', '张三')

B.

['小红', '小明', '李四', '张三']

C.

('小红')

D.

运行出错

第 9 题    单选题

Python中词云主要是对文本数据中出现频率较高的“关键词”通过不同颜色、大小的渲染,在视觉上突出表现。常用的主要有WordCloud库,下列是WordCloud常用参数的是?

A.

width,height,background_color,max_words,mask

B.

width,height,bold,memset,jieba,max_words

C.

background_color,jieba,time,random,mask,max_words

D.

max_words,mask,width,height,jieba,text_color

第 10 题    单选题

Python中可以实现随机生成1-20之间int类型整数的语句是?

A.

print(random.int(1,20))

B.

print(random.randint(1,20))

C.

print(random.sample(1,20))

D.

print(random.shuffle(1,20))

第 11 题    单选题

下列可以输出当前时刻时间的正确的语句是?

A.

print(time.ctime())

B.

print(time.strptime())

C.

print(time.nowtime())

D.

print(time.local())

第 12 题    单选题

下列哪个选项是Python math库的数字常数?

A.

math.sin

B.

math.sqrt

C.

math.e

D.

math.pow

第 13 题    单选题

现有字符串S= "Where there's a will there's a way.",现在需要计算并输出字符串中'e'在S出现的次数,正确的语句是?

A.

print(S.find('e',1))

B.

print(S.index('e'))

C.

print(S.count('e'))

D.

print(S.index('e',0,len(S)))

第 14 题    单选题

下列可以正确输出
池塘里”快乐的歌唱家” 
字符的Python语句是?

A.

print("池塘里\"快乐的歌唱家")

B.

print("池塘里\"快乐的歌唱家\")

C.

print('池塘里'\"快乐的歌唱家\")

D.

print('池塘里\"快乐的歌唱家\"')

第 15 题    单选题

Python中字符串可以使用反斜线进行转义,实现某些难以用字符表示的效果。下列可以实现换行效果的转义字符是?

A.

\b

B.

\n

C.

\t

D.

\r

第 16 题    单选题

编写Python程序实现:输入任意一个数字,输出所需火柴棍的数量。划线处应填入的代码是?

num=input()
code={0:6,1:2,2:5,3:5,4:4,5:5,6:6,7:3,8:7,9:6}
count=                             
print("共需火柴棍:",count)


A.

int(num)

B.

code(int(num))

C.

code[int(num)]

D.

code[num]

第 17 题    单选题

运行下列程序,输出的结果是?
scores={"语文":89, "数学":92}
scores["数学"]=90
scores[100]="技术"
print(scores)

A.

{'语文': 89, '数学': 90, 100: '技术'}

B.

{'语文': 89, '数学': 90, '技术':100}

C.

{'语文': 89, '数学': 92, '技术':100}

D.

语文': 89, '数学': 90, 100: '技术'

第 18 题    单选题

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

>>> fruit={'apple','orange','pear'}

>>> fruit.update("pear")

>>> print(fruit)

A.

{'e', 'r', 'p', 'a', 'apple', 'orange', 'pear'}

B.

{'pear', 'orange', 'apple'}

C.

{'pear', 'orange', 'apple', 'pear'}

D.

{'orange', 'apple'}

第 19 题    单选题

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

>>> a={1,2,3,4,5,6}

>>> b={4,5,6,7,8,9}

>>> print(a&b)

A.

{1, 2, 3}

B.

{4, 5, 6}

C.

{7, 8, 9}

D.

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

第 20 题    单选题

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

x=['bike','car','bus','train']

print(list(map(len, x)))

A.

[0, 1, 2,3]

B.

[1, 2, 3, 4]

C.

[4, 3, 3, 5]

D.

[4, 3, 3, 4]

第 21 题    单选题

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

c=[5,3,5,8,2,7,6]
c.pop(5)
c.remove(5)
print(c)


A.

[3, 8, 2, 7, 6]

B.

[5, 3, 8, 7, 6]

C.

[3, 5, 8, 2, 6]

D.

[5, 3, 8, 2, 6]

第 22 题    单选题

有如下Python程序段:

L=[5,8,7,2,6,4,1,8]
p=0
for i in range(1,len(L)):
    if L[i]<L[p]:
        p=i

则程序执行后,p的值是?

A.

3

B.

4

C.

5

D.

6

第 23 题    单选题

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

letter=list({'a':1,'b':2,'c':3,'d':4}) 

print(letter) 

A.

[1, 2, 3, 4]

B.

['a', 'b', 'c', 'd']

C.

['a', 1,'b',2, 'c', 3,'d',4]

D.

['a':1,'b':2,'c':3,'d':4]

第 24 题    单选题

运行下列语句,输出的结果是?( )

>>> x=["A","B","C"]

>>> y=["a","b","c"]

>>> {i:j for i,j in zip(x,y)}

A.

{['A', 'a'], ['B','b'],[ 'C', 'c']}

B.

{ 'a', 'b', 'c'}

C.

{'A': 'a', 'B': 'b', 'C': 'c'}

D.

{'A', 'B', 'C'}

第 25 题    单选题

运行下列程序,以下选项正确的是?

def k(num):
    if num == 1:
        return False
    for i in range(2, num):
        if (num % i) == 0:
            return False
    else:
        return True
nums = [i for i in range(1, 100) if k(i)]
print(nums)


A.

输出结果为1到99(包括99)所有整数组成的列表。

B.

输出结果为1到98(包括98)所有偶数数组成的列表。

C.

输出结果为1到99(包括99)所有奇数组成的列表。

D.

输出结果为1到97(包括97)所有质数(素数)组成的列表。

判断题
第 26 题    判断题

Python 中,字典是一个无序、可变和有索引的键、值对的集合,每一对键、值对之间用分号“;”间隔。

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

set("12323")和{str(i) for i in range(1,4)}可以创建相同的集合。

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

集合是一个无序的不重复元素序列,用{}作为界定符,如集合{1,2,[3,4],"ab"}

A.
正确
B.

错误

第 29 题    判断题

>>>sub=['语文','数学','英语','科学','思品','体育']

>>>score=[105,97,156,105,72

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

对于数字n,如果表达式 0 in [n%d for d in range(2, n)] 的值为False,则说明n是素数

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

从存储内容上看,元组可以存储整数、实数、字符串、列表、元组等任何类型的数据,并且在同一个元组中,元素的类型是相同的。

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

Python默认安装包含PyInstaller内置模块,可以直接运行。

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

Python中设定字符串 str="Hello Python"
str.find(‘w’)返回值为0。

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

Python中对字符串进行修改时只需使用原有的内存空间,其内存地址不会发生变化。

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

range(start,stop,step)函数返回一个对象,该对象产生一个整数序列,开始与结束位置所组成的区间[start, stop],是左闭右闭的,start默认是0,step默认是1。

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

青少年软件编程等级考试五级真题:石头剪刀布。

“石头剪刀布”游戏是猜拳的一种,两人玩,起源于中国,游戏规则中,石头克剪刀,剪刀克布,布克石头。小明编写了Python程序代码,决定与电脑大战“石头剪刀布”。

输入格式:

      共1行,一个数表示用户出拳的类型(石头1、剪刀2、布3)。

输出格式:

      共1行,输出电脑的出拳类型与游戏结果。

输入样例:

      2

输出样例:

      电脑出的是布,这局恭喜用户胜出!

import random
win=[('石头','剪刀'),      ①    ,('布','石头',)]
cq={1:'石头',2:'剪刀',3:'布'}
while True:
    user=int(input('请出拳:1.石头 2.剪刀 3.布 \n'))
    if user not in range(     ②     ):
        print("输入有误,请重新输入……")
        continue
    computer=random.randint(1,3)
    if user==computer:
        print("电脑出的是%s,这局是平局!"%cq[computer])
        break
    elif (    ③     ,cq[computer]) in win:
        print("电脑出的是%s,这局恭喜用户胜出!"%cq[computer])
        break
    else:
        print("电脑出的是%s,这局恭喜电脑胜出!"%cq[computer])
        break
第 37 题    问答题

青少年软件编程等级考试五级真题:数字序列交集。

已知两个整数序列num1和num2,求解两个整数序列的交集。输出结果中的每个元素一定是唯一的。我们可以 不考虑输出结果的顺序 。例如,nums1 = [4,9,5], nums2 = [9,4,9,8,4]。输出结果可以为[9,4]或[4,9]。

请将程序代码补全:

def aa( nums1=[], nums2=[]):
        set1 =      ①      
        set2 =      ②      
        if len(set1) > len(set2):
                   ③         
        return [x for x in set1 if x in      ④    ]
 
nums1=[4,9,5]
nums2= [9,4,9,8,4]
print(aa(nums1,nums2))
第 38 题    问答题

青少年软件编程等级考试五级真题:出现过一次的元素。

明明得到一个数值列表,想知道列表中只出现过一次的元素。请你帮忙编写程序输出这些元素。注意元素必须按照它们在数字列表中初始顺序输出。 输入格式: 输入共1行,若干个数值之间以空格隔开。 输出格式: 输出共1行,若干个数值之间以空格隔开。

输入样例: 19 73 258 6 73 234

输出样例: 19 258 6 234

a=[int(i) for i in input().split()]
n=len(    ①    )
for i in range(    ②    ):
    f=0
    for j in range(n):
        if (a[i]==    ③     and i!=j):
            f=1
            break;
    if (f==0):
        print(    ④    ,end=' ')
答题卡
选择题
判断题
编程题
36 37 38
题目总数:38
总分数:100
时间:90分钟