202109青少年软件编程(Python)等级考试试卷(二级)
第 1 题 【单选题】
已知存在字典 a 中存储了多个键值对,请问在以下代码段中哪一项能够实现删除所有键值对的同时保留变量信息?(选项)
A :a.remove()
B :a.pop()
C :a.clear()
D :del a
正确答案:C
试题解析:
第 2 题 【单选题】
下列创建元组的方法中不正确的是?( )
A :t=(1,2,‘信息’)
B :t=(1)
C :t=(‘信息’,)
D :t=‘音乐’,‘体育’,‘美术’
正确答案:B
试题解析:
只有一个元素的元组, 在定义时, 需要添加一个逗号, t=(1,)
第 3 题 【单选题】
有如下 Python 程序段:
x,y=12,5
if x % y==0:
z=x/y
print(x,"/",y,"=",z)
else:
z=y*x
print(x,"*",y,"=",z)
程序段执行后, 输出的结果为?( )
A :x/y=2.4
B :x*y=60
C :12/5=2.4
D :12*5=60
由于x除以y余数等于2,则会触发else块中的代码逻辑。其中变量z被赋值为60;最终输出的结果等于12乘以5得到60;因此本题的答案应选择A选项正确
第 4 题 【单选题】
以下程序的运行结果是?( )
list1=[1,2,3]
list1[2]=4 print(list1)
A :[1,2,4]
B :[1,2,3]
C :[1,4,3]
D :[1,4]
正确答案:A
试题解析:
第 5 题 【单选题】
s='语文、 数学、 英语、 信息技术'
l=s.split('、 ')
print(l)
以上代码的运行结果为?( )
A :[‘语文’, ‘数学’, ‘英语’, ‘信息技术’]
B :[‘语文、 数学、 英语、 信息技术’]
C 😦‘语文’, ‘数学’, ‘英语’, ‘信息技术’)
D 😦‘语文、 数学、 英语、 信息技术’)
**正确答案:A
试题解析:
该函数采用指定分隔符对输入字符串执行分割操作。其语法定义如下:str.split(str=\text{""},num=str.count(str))。在本题中,默认将分隔参数设置为'、 '(即使用中文逗号加空格作为分隔符),因此经过分割后会得到的结果列表包括语文、数学、英语和信息技术四个学科。
第 6 题 【单选题】
执行下列代码后, 运行结果是?( )
l1 = [11, 22, 33]
l2 = [66, 44, 22]
for i in l1:
for j in l2:
if i == j:
print(i)
A :True
B :0
C :2
D :22
正确答案:D
试题解析:
掌握循环嵌套的使用
第 7 题 【单选题】
执行以下语句后的输出结果是?( )
str1='My name is BeiJing'
print(len(str1))
A :20
B :18
C :15
D :16
正确答案:B
试题解析:
第 8 题 【单选题】
列表 a=[1,2,3,4,5,6,7,8,9],对列表进行切片操作, 要想得到[3,5,7], 以下切片正确的是?( )
A :a[-7:-2:-2]
B :a[2:7:2]
C :a[3:7:2]
D :a[2:7:-2]
正确答案:B
试题解析:
第 9 题 【单选题】
执行以下语句, 将输出?( )
list1=['b','c',1,2,3,4,5]
list1.append('a')
list1.append('a')
print(list1)
A :[‘b’,‘c’,1,2,3,4,5]
B :[‘b’,‘c’,1,2,3,4,5,‘a’]
C :[‘b’,‘c’,1,2,3,4,5,‘a’,‘a’]
D :无输出
正确答案:C
试题解析:
第 10 题 【单选题】
不能用作 if 语句条件表达式的是?( )
A :x in range(6)
B :3=a
C :a>3 and b<10
D :x-6>5
正确答案:B
试题解析:
能够合理设置 if 语句的条件
第 11 题 【单选题】
alist=['cat','bat','cat','hat','cat'], 执行下列代码, 输出的结果是?( )
alist.remove('cat')
print(alist)
A :[‘cat’,‘bat’,‘cat’,‘hat’,‘cat’]
B :[‘bat’,‘cat’,‘hat’,‘cat’]
C :[‘bat’,‘hat’]
D :[‘cat’,‘bat’,‘cat’,‘hat’]
正确答案:B
试题解析:
第 12 题 【单选题】
执行以下语句后, 输出的结果是?( )
list2 = ['a',1, 2, 3, 4, 5 ]
print(list2[5])
A :5
B :4
C :3
D :提示错误
正确答案:A
试题解析:
第 13 题 【单选题】
以下创建字典的方法, 正确的是?( )
A :d={学号,001,姓名,张三,成绩,98}
B :d={‘学号’:‘001’,‘姓名’:‘张三’,‘成绩’:98}
C :d={‘学号’,‘001’,‘姓名’,‘张三’,‘成绩’,98}
D :d={‘学号’:‘001’;‘姓名’:‘张三’;‘成绩’:98}
正确答案:B
试题解析:
第 14 题 【单选题】
以下代码输出的结果是?( )
for i in "Python": if i == "t" or i == "o":
continue
print(i,end="")
A :Pyhn
B :Python
C :Pyt
D :Pytho
continue 字符的功能即是‘继续’。因此可以看出它所起到的作用即是跳过当前循环剩下的所有指令。然而即便如此该循环仍会继续执行下去。
第 15 题 【单选题】
对于字典 dic={1:2,‘3’:‘d’,‘sex’:1,4:{‘No’:1,‘name’:‘Mike’}},len(dic)的值是?( )
A :3
B :4
C :5
D :6
正确答案:B
试题解析:
第 16 题 【单选题】
对于元组 tup=(1,2,3,4,5)执行的操作非法的是?( )
A :len(tup)
B :max(tup)
C :min(tup)
D :tup[1] = 6
正确答案:D
试题解析:
第 17 题 【单选题】
为了帮助小红计算购买苹果所需的总费用,请问她打算输入多少斤苹果?水果店开展促销活动,销售苹果的价格为每斤5元。若购买数量达到或超过六斤,则享受八折优惠。请提供一个能够计算小红购买苹果总费用的Python程序代码 snippets。具体购买数量由小红自行输入。
A :
x=input("请输入斤数: ")
if x<6:
y=5*x
else:
y=5*x*0.8
print(y)
B :
x=eval(input("请输入斤数: "))
if x<6:
y=5*x
else:
y=5*x*0.8
print(y)
C :
x=eval(input("请输入斤数: "))
if x<6:
y=5*x*0.8
else:
y=5*x
print(y)
D :
x=input("请输入斤数: ")
if x<6:
y=5*x*0.8
else:
y=5*x
print(y)
正确选项:B
试题解析如下:
基于题目要求,在购买数量x小于6时,请计算金额y等于5元乘以x;反之则(即购买数量x大于或等于6时),金额y等于5元乘以x并乘以0.8折扣。因此正确的选项是:B。
=eval(input("请输入斤数: "))#input()输入的是 str 类型, 不能直接进行计算, 所以需要
eval()进行转换。
if x<6:
y=5*x
else:
y=5*x*0.8
print(y)
第 18 题 【单选题】
执行下列代码后, 运行结果是?( )
s="垃圾分类"
i=len(s)
while i>=0:
print(s[i-1])
i=i-1
A :类 分 圾 垃
B :垃 圾 分 类
C :垃 圾 分 类 垃
D :类 分 圾 垃 类
掌握字符串长度函数的应用并了解元素索引值的变动情况
第 19 题 【单选题】
将列表 a 中的所有元素包含 1 至 100 的奇数值。存在多种解决方案来完成这一任务,请判断以下哪一种方案是不正确的?()
A :a=list(range(1,100,2))
B :a=range(1,101,2)
C :
a=[]
i=1
while i<100:
a.append(i)
i+=2
D :
a=[]
for i in range(1,100,2):
a.append(i)
正确答案:B
试题解析:
第 20 题 【单选题】
已知 a=[‘a’,‘b’], b=[7,8,9], 如果 c=a*2+b, 那么列表 c 是?( )
A :[‘a’,‘b’,‘a’,‘b’,7,8,9]
B :[‘a’,‘b’,2,7,8,9]
C :[‘a’,‘b’,7,8,9,‘a’,‘b’]
D :[‘a’,‘b’,‘a’,‘b’,7,8,9,7,8,9]
正确选项为A
试题解析如下:
涉及的知识点包括列表的连接以及重复元素的操作。
根据题目要求,在选项中A为正确的选择。
第 21 题 【单选题】
若 li=list(range(1,10,2)), 则 print(li)的结果是?( )
A :[0,2,4,6,8,10]
B :[1,3,5,7,9]
C :[1,2,3,4,5,6,7,8,9,10]
D :[0,2,4,6,8]
正确答案:B
试题解析:
掌握 range 函数以及 list 类型转换函数的使用
第 22 题 【单选题】
已知 a=[1,2,3,4,5,6,7], 则 a[0:-2]的的值是?( )
A :[1,2,3,4,5,6]
B :[2,3,4,5,6]
C :[1,2,3,4,5]
D :[2,3,4,5]
**正确答案:C
试题解析:
本题考查的知识点为列表通用操作, 实现索引范围内的访问, 按题目所述的意思是实现从第一个元素开始至最后一个元素前一个位置的索引访问, 因此正确选项应为选项C
第 23 题 【单选题】
以下语句不正确的是?( )
A :dict={1:‘a’}
B :a={‘name’:‘bob’}
C :e={[1]:‘篮球’}
D :c={‘school’:‘精英小学’}
当定义字典时,在键和值为文本类型时,则必须加引号;并且不允许作为列表形式存在作为字典的键
第 24 题 【单选题】
关于 break 的作用, 以下说法正确的是?( )
A :按照缩进跳出当前层语句块
B :暂停该语句后面的循环内容, 跳转到循环开始位置开始下一轮循环
C :跳出当前层 for/while 循环
D :跳出所有 for/while 循环
正确答案:C
试题解析:
第 25 题 【单选题】
若 s=(1,‘a’,[1,2]), 则 len(s)的值为?( )
A :错误
B :2
C :3
D :4
正确答案:C
试题解析:
理解元组的元素, 掌握求元组长度的函数
第 1 题 【判断题】
while 循环和 for-in 循环一样, 都明确了循环的次数。
A :正确
B :错误
正确答案:B
试题解析:
while 循环时条件循环
第 2 题 【判断题】
continue 语句的作用在于终止当前循环的执行,并决定是否继续下一次迭代
正确答案
第 3 题 【判断题】
ESC 可以用于 Python 跳出循环。
A :正确
B :错误
**正确答案:B
试题解析:
Break语句能够跳出for及while循环体。一旦for或while循环终止执行,其对应的else块将不会执行。continue语句用于指示Python跳过当前循环块内的剩余指令并进入下一轮循环。
第 4 题 【判断题】
按照顺序执行下面的代码, 以下命令都是合法的。
list1=[1,2,3] list1[2]=4
tuple1=(1,2,3)
tuple1[0]=0
A :正确
B :错误
正确答案:B
试题解析:
第 5 题 【判断题】
可以使用“+” 和“-” 来连接与删除字符串。
A :正确
B :错误
正确答案:B
试题解析:
字符串的运算
第 6 题 【判断题】
不同类型的元素可以存储在同一个列表中。
A :正确
B :错误
正确答案:A
试题解析:
第 7 题 【判断题】
Python 列表、 元组、 字典都属于有序序列, 都可以用索引进行访问。
A :正确
B :错误
正确答案:B
试题解析:
字典是映射, 不是序列
第 8 题 【判断题】
message1=‘Hello’, 则 message1.append(‘world’)的值为’Hello world’。
A :正确
B :错误
正确答案:B
试题解析:
第 9 题 【判断题】
元组一旦创建, 其中的元素就不能再被修改了。
A :正确
B :错误
正确答案:A
试题解析:
理解 Python 中的元组的概念的特点
第 10 题 【判断题】
运行以下程序, 结果是一条由 9 行单个的#组成的图案。
i=0
while i<10:
i=i+1
print('#')
A :正确
B :错误
正确答案:B
试题解析:
应该是 10 个#
第 1 题 【问答题】
图形的循环美
开发一个海龟绘图工具程序用于生成特定几何结构图形
正确答案:
import turtle
turtle.pencolor("red")
turtle.speed(6)
length=20
jd=90
i=1
while i<=100:
turtle.forward(length)
turtle.left(jd)
length=length+4
i=i+1
turtle.done()
试题解析:
评分细则:
_1) 导入海龟模块(2分)
2) 设定画笔颜色(2分)
3) 设定起始线段长度为20(2分)
4) 完成至少80次循环操作(6分)
5) 使每条线段依次增加4个单位长度(3分)
6) 最终生成预期图形(5分)
