202309青少年软件编程(Python)等级考试试卷(二级)
第 1 题 【单选题】
yyh=[2023,'杭州亚运会',['拱宸桥','玉琮''莲叶']]
jxw=yyh[2][0]
print(jxw[1]*2)
以上代码运行结果是?( )
A :宸宸
B :杭杭
C :玉玉
D :州州
标准答案:A
解题思路:
赋值语句为 jxw = yyh[2][0] ,其中变量 jxw 的取值为"拱宸桥"。其索引为1的部分对应于"宸"这一字符,则通过进一步运算得到 jww[1]_2 的结果为"宸宸"。
第 2 题 【单选题】
以下代码执行后输出是?( )
list0 = [5, 4, 3, 2, 2]
list0.remove(2)
list0.insert(2, 6)
print(list0)
A :[5, 4, 3, 6, 2]
B :[5, 4, 3, 2, 6]
C :[5, 4, 3, 2, 6, 2]
D :[5, 4, 6, 3, 2]
**正确答案为D选项
针对该题的解析如下:将6插入到索引为2的位置,在此操作中与前一步移除第2项的操作无关。因此选择D选项
第 3 题 【单选题】
下面代码运行后,输出区打印的内容是?( )
s = 0
for i in range(10):
s += 1
if i * i < 50:
break
print(s)
A :0
B :1
C :7
D :3
**正确答案:B
试题解析:
在初始循环阶段, 赋值 s = 1 和 i = 0, 满足条件 i² < 50 后, 执行 break 语句以退出循环, 输出区域显示数值1.
第 4 题 【单选题】
对 s = “www.baidu.com” 执行 s.split(“.”)后的结果是?( )
A :www.baidu.com
B :[“www”, “baidu”, “com”]
C :“www.baidu.com”
D :wwwbaiducom
正确答案:B
试题解析:
split函数可以用于分割字符串。我们可以通过调用split函数来处理这一操作。这种处理方法可以帮助我们将输入的字符串转换为所需的列表形式。
第 5 题 【单选题】
关于Python的元组类型,以下选项中描述错误的是?( )
A :元组不可以被修改
B :Python中元组使用小括号和逗号表示
C :元组中的元素要求是相同类型
D :一个元组可以作为另一个元组的元素
正确答案:C
试题解析:
元组中的元素可以是不同类型,所以C是错误的
第 6 题 【单选题】
已知列表animal = [「猫」,「狗」,「猴子」,「老虎」,「狮子」] ,若要获得输出结果为"猫" ,以下哪一选项的表述不符合事实?( )
A :animal[0]
B :animal[1]
C :
animal.reverse()
animal[4]
D :
animal.reverse()
animal[-1]
在列表中,默认情况下每个元素都有一个起始索引值为0的位置。因此,在这种情况下,默认情况下使用动物列表的第一个项是通过animal[0]实现的而不是animal[1]。为了使顺序发生反转可以调用reverse()函数这一操作会对当前动物列表中的所有项进行倒序排列。当调用reverse()方法后 在动物列表中原本第一个项‘cat’的位置被移动到最后一位。这样我们就可以通过两种方式访问:直接使用索引4或者使用逆序标记-1来访问这个被反转后的最后一个项 因此 本题的答案应当选择选项B。
第 7 题 【单选题】
下列关于列表的说法,正确的是?( )
A :列表创建后不能被修改
B :列表中各元素的类型必须相同
C :列表不能用下标访问
D :通过方括号[ ]可以创建列表
**正确答案:D
试题解析:
列表被视为一种序列数据结构,在其创建之后能够无限制地进行修改;
各个元素的类型各不相同,并且可以通过索引来访问它们;
在编程中通常采用方括号[]或list的方式创建列表时,其间的元素需以逗号分隔。
第 8 题 【单选题】
下列定义元组的语句,不正确的是?( )
A :
tp=( )
B :
tp=(‘sun’)
C :
tp=(‘star’,)
D :
tp=(‘sun’,‘star’,‘moon’)
正确答案:B
试题解析: 通过()可以创建元组, 空括号生成空元组, 需要注意的是, 在生成只有一个元素的元组时, 需要在第一个元素后跟一个逗号。
第 9 题 【单选题】
字典d = {"苹果":"apple","香蕉":"banana","橘子":"orange","桃子":"peach"}
基于键值对的形式存储了部分水果的中英文名称,请问能够仅输出水果英文名称的语句是?( )
A :print(d.values())
B :print(d.keys())
C :print(d.items())
D :以上三个语句都无法实现
**正确答案:A
试题解析:
该字典类型的调用方法d.values()用于获取所有值信息;而d.keys()则用于获取所有键信息;此外d.items()则提供了完整的键值对集合;其中水果英文名称均归为此字典中的对应项。
第 10 题 【单选题】
下面代码中,不能创建一个字典的是?( )
A :
d = {}
B :
d = {‘葡萄’, 20}
C :
d = {‘葡萄’:20}
D :
d = {‘葡萄’:20, ‘西瓜’:12}
标准答案为:B
试题解析:
**试题解析指出:B不是一个字典;其中字典元素都是成对存储的,并且用冒号分隔开来。
第 11 题 【单选题】
运行下面的代码,输出的结果是?( )
name1 = '玛卡巴卡'
name2 = '依古比古'
name3 = '唔西迪西'
print('晚安' + name2)
A :晚安玛卡巴卡
B :晚安依古比古
C :晚安唔西迪西
D :晚安name2
通过 + 运算符可以将两个字符串连接起来,在本例中name2变量存储为 '依古比古'。执行打印操作后会输出 '晚安依古比古'。
第 12 题 【单选题】
下面几个有关流程控制的说法,那个是错误的?( )
A :如果条件判断语句永远为 true,循环将会无限的执行下去
B :当判断条件为假(false) 时,循环结束
C :在while 语句中,"判断条件"不可以是个常值
D :执行语句可以是单个语句或语句块。判断条件可以是任何表达式等
试题解析:在while语句中,“判断式”可以是一个常量值,则该循环必然成立。
第 13 题 【单选题】
关于Python循环结构的说法,下列哪个是错误的?( )
A :Python可以通过for和while循环,实现遍历和各种循环等功能
B :break是用来跳出自己所在的整个循环体,执行循环后面的语句
C 会终止当前的循环结构,并跳过所有后续的循环体代码块;之后程序将直接转去执行当前语句后面尚未处理的其他语句
D :遍历循环中的遍历结构可以是字符串或者range()函数等
正确答案:C 试题解析:该continue语句会跳出当前循环;而该break语句会跳出所有循环。即该break语句才是终止所有循环的过程
第 14 题 【单选题】
请问此程序运行后的结果是?( )
s=1
for i in range(1,4,3):
s = s+i
print(s)
A :2
B :6
C :1
D :5
正确答案:A
试题解析:
range(1,4,3) 这个包含的数据是1,不包含4。所以:1+1=2
第 15 题 【单选题】
下列哪个说法不正确的是?( )
A :字典是通过key(键)来进行访问的,跟列表、元组不同
B :字典没有头上标和尾下标,跟value对应的就只有key(键)
C: Python中, 可以通过对现有键进行重新赋值来实现字典值的更新, 无法借助新增键来实现扩展数据结构.
通过调用Python内置函数来实现字典元素的删除操作;此外整个字典还可以通过dict.clear()方法被清除
标准答案为:C
解析如下:在Python编程中,修改字典的value值可以通过重新为字典中的键赋值来实现。此外,在Python中还可以通过增加新的键来添加更多的元素
第 16 题 【单选题】
执行以下程序代码
score = eval(input("请输入成绩:"))
if score > 0 and score < 60:
print("不及格")
elif score >= 60 and score <=100:
print("及格")
else:
print("请输入正确的成绩")
当输入60时,输出结果是?( )
A :及格
B :不及格
C :请输入正确的成绩
D :60
**正确答案:A
试题解析:
本题涉及程序的多选择分支结构设计。其中输入值60位于区间[60, 100]内。因此得到输出结果为"及格"。
第 17 题 【单选题】
以下关于循环的说法,不正确的是?( )
A :for循环可以用于遍历列表中的所有元素
B :while循环满足循环条件时不断地运行,直到指定的条件不满足为止
C :Python中可以使用do…while循环
D :break和continue语句都可以用在for循环和while循环中
**标准答案为C选项
试题解析:
在Python编程语言中,默认情况下仅提供for和while两种基本的执行循环,在这种设计下并没有内置的do-while语法结构。因此,在本题中正确的选择是选项C。
第 18 题 【单选题】
d = {"山东":"青岛", "浙江":"杭州", "安徽":"芜湖"} ,
请问删除d中’山东’对应的数据值的函数或方法是?( )
A :del d[‘浙江’]
B :d.clear()
C :del d[‘山东’]
D :d.pop(‘山东’)
正确答案:C
试题解析:
第 19 题 【单选题】
numbers = [1 , 2 , 3 , 4],以下哪一项可以用来访问numbers中的第三个元素?( )
A :numbers[1]
B :numbers[2]
C :numbers[3]
D :numbers[4]
正确答案:B
试题解析:
列表中的元素索引从0开始计数
第 20 题 【单选题】
下列程序运行后,输出的结果应该是哪个选项?( )
t = ('s', 'a', 'a', 'r', 5)
print(t.index('a')+t.count('a'))
A :2
B :3
C :4
D :6
**标准答案:B 试题解析:使用count()和index方法获取指定元素在元组中的出现次数及具体位置。采用count()函数统计指定元素的数量,并利用index方法查找其位置(遵循就近原则,在最左侧找到的第一个结果)
第 21 题 【单选题】
以下程序的输出结果是?( )
list = ['华东','华西','华南','华北']
list.insert(2,'华中')
list.pop()
print(list)
A :[‘华东’, ‘华西’, ‘华中’, ‘华南’, ‘华北’]
B :[‘华东’, ‘华中’, ‘华西’, ‘华南’, ‘华北’]
C :[‘华东’, ‘华西’, ‘华中’, ‘华南’]
D :[‘华西’, ‘华中’, ‘华南’, ‘华北’]
正确答案:C
试题解析:本题考查列表的插入和从指定位置删除列表中的元素,其中2表示在原列表中指定位置前插入新元素,而.pop()方法无参数时默认用于删除最后一个元素。
第 22 题 【单选题】
使用下列哪几个命令可以把列表list1变成列表list2?( )
list1 = ['苹果', '樱桃', '西瓜', '香蕉', '葡萄', '菠萝', '芒果', '火龙果']
list2 = ['苹果', '樱桃', '西瓜', '香蕉', '葡萄', '菠萝', '桑葚', '番石榴']
A :
del list1[6:8]
list1 += ['桑葚', '番石榴']
B :
del list1[6:7]
list1 += ['桑葚', '番石榴']
C :
del list1[6:8]
list1.append(['桑葚', '番石榴'])
D :
del list1[6:7]
list1.append(['桑葚', '番石榴'])
从列表中去除元素,则可以通过调用del关键字并结合空括号语法结构来实现。
通过调用del关键字和空括号语法结构来实现。
在 Python 中,则是通过+运算符来进行操作。
除了通过+运算符之外,则还可以利用append()函数来完成这一功能。
append()函数会将指定的元素追加到列表末尾位置。
因此正确的答案应当是:
del list1[6:8]
list1 += ['桑葚', '番石榴']
第 23 题 【单选题】
下面这个列表中,包含几个元素?( )
list = ['a', ['bb', 'cc', 'dd'], 'e', ['ff', 'gg'], 'h']
print(list)
A :8个
B :5个
C :6个
D :4个
**正确答案:B
试题解析:
表单可以嵌入 表单中的字段同样也可以是一个表单对象。
对于该特定的表单来说,它共有5个项目,其中3个项目属于字符型,另外2个项目也是由子表单构成,这些子表单又进一步嵌套了2层结构,在进行嵌套对象识别时,我们主要依据的是使用[]来标识和判断:每个嵌套的子表单占用一个空间位置。
第 24 题 【单选题】
阿宝正在学习Python编程语言,并开发了一个能够根据输入月份计算并显示2023年该月天数的应用程序。 程序如下:
monthdays=[0,31,28,31,30,31,30,31,31,30,31,30,31]
m=int(input())
print('2023年'+str(m)+'月有'+str(monthdays[m])+'天。')
要想得到2023年9月的天数,应该在终端输入的数字是?( )
A :11
B :10
C :9
D :8
**正确答案:C
试题解析:
列表项的索引位置是从0开始计算的;然而,在week列表进行定义时,其第一个元素被设定为0(这样就避免了索引位置为0对应的月份),因此9月份对应的索引位置仍然保持为9(即选择C选项)。
第 25 题 【单选题】
执行以下运算后,text2的值是?( )
text1 = "Good work"
text2 = text1[-1]*3
A :Good workGood workGood work
B :workworkwork
C :work work work
D :kkk
**正确答案:D
试题解析:
通过使用索引-1获取数组的最后一项值k,并将其数值乘以3则等效于复制该值三次。从而生成kkk的字符串形式。
第 1 题 【判断题】
元组一旦被创建就不能被修改。( )
A :正确
B :错误
正确答案:A
试题解析:
第 2 题 【判断题】
‘abc’ - ‘a’ 的结果是 ‘bc’。( )
A :正确
B :错误
正确答案:B
试题解析:
字符串不能进行减法操作,代码会报错。
第 3 题 【判断题】
下列程序在运行过程中,变量 i 的值不可能是5。( )
for i in range(5):
print(i)
A :正确
B :错误
正确答案:A
试题解析:
变量i的值分别会取0、1、2、3、4,不会取到5。
第 4 题 【判断题】
input() 语句输入的内容,一定是字符串类型的。( )
A :正确
B :错误
正确答案:A
试题解析:
第 5 题 【判断题】
s="Python";
for i in s:
print(i);
上面这个程序段,运行后输出的结果是: Python。( )
(注意:是横排的Python)
选项A为正确答案
第 6 题 【判断题】
for i in range(5):
print(i)
上述代码的运行结果是( )
1
2
3
4
5
A :正确
B :错误
正确答案:B
试题解析:
range(5)的取值范围从0开始,到4结束。
第 7 题 【判断题】
dic_1 = {'键值1': '苹果', '键值2': '葡萄', '键值3': [11, 22, 33]}
dic_1['键值4'] = '西瓜'
print(dic_1)
该代码的作用在于向字典dic_1中新增一项,并返回更新后的字典内容。具体而言,在该操作中,“键值4”的属性被设定为"西瓜"这一项。“键值4": "西瓜"这一项的加入使得整个字典的内容得以扩展。“键值1"、"键值2"以及"键值3"这三项的属性则分别被赋上了相应的对应物:"苹果"、"葡萄"以及[11, 22, 33]这一组数值数组合在一起构成了完整的数据结构。最后程序会将这些信息整合并返回出来。”
选项A: 正确
选项B: 错误
正确答案:A
试题解析:
向字典dic_1中新增一个键值对(键值4),其对应的内容为'西瓜'。经过操作后,默认情况下完整的字典结构将更新为:{‘键值1’: '苹果', '键值2': '葡萄', '键值3': [11, 22, 33], '键值4': '西瓜'}。这一操作完成之后的结果与预期一致。
第 8 题 【判断题】
该列表具有明确顺序,并能够存储多样化的项;此外还可以表示为空状态;例如[],[(),[]]都代表空状态;判断一个列表是否非空可以通过查看其长度来完成。
A :准确
B :错误
**正确答案:B
试题解析:
空列表是指没有元素的列表(即长度为零),例如[]就是这样的情况。但是像[(),{}]这样的列表并不是空的,它包含了两个元素:第一个是一个空元组(),第二个是一个空列表()。因此该命题是正确的结论。
第 9 题 【判断题】
元组与列表均属序列类型,在其中各个元素均具有明确的位置标识,并且能够通过调用sort()函数将元组与列表中的各个元素按照一定的顺序重新排列。
A :为正确答案
B :不正确
正确答案:B
试题解析:
元组中的元素不可更改,并且元组对象不具备sort属性。
第 10 题 【判断题】
if、elif和else后面均应写明条件以便判断True或False。( )
A :正确
B :错误
正确答案:B
试题解析:
else后面不需要条件语句
