中国电子学会2022年12月份青少年软件编程Python等级考试试卷二级真题(含答案)

2022-12 Python二级真题

分数:100

题数:37

测试时长:60min

一、单选题(共25题,共50分)

1.运行下列程序,最终输出的结果是?(B)(2分)

info={1:'小明',2:'小黄',3:'小兰'}

info[4]='小红'

info[2]='小白'

print(info)

A.{1:'小明',2:'小白',3:'小红',4:'小兰'}

B.{1:'小明',2:'小白',3:'小兰',4:'小红'}

C.{1:'小白',2:'小名',3:'小兰',4:'小红'}

D.{1:'小明',2:'小红',3:'小兰',4:'小白'}

2.下列Python程序的功能是求?(B)(2分)

s=0

k=1

foriinrange(1,101):

    s=s+k*i

    k=-k

print(s)

A.s=1+2+3+5+6…+100的值

B.s=1-2+3-4+5-6+…-100的值

C.s=1+2+3+4+5+6…+101的值

D.s=1-2+3-4-5-6-…-101的值

3.有以下三个词组的列表,

game_name=['一只蜗牛','一只猫','一只兔子','孩子们','运动员们','一朵云']

game_where=['在伞底下','在沙滩上','在沙发上','在石头上','在天空中','在公园里']

game_what=['搭了个窝','在慢慢爬','玩滑梯','打排球','正在睡觉','遮住太阳']

如果造词的输出结果是“一只兔子在公园里搭了个窝”,代码正确的是?(A)(2分)

A.print(game_name[-4]+game_where[-1]+game_what[0])

B.print(game_name[2]+game_where[6]+game_what[0])

C.print(game_name[3]+game_where[6]+game_what[1])

D.print(game_name[-4]+game_where[5]+game_what[1])

4.执行下面代码,输出的结果是?(C)(2分)

for leibiein'student':

    if leibie=='u':

       break

    print(leibie)

A.  st

B.  stu

C.  s

    t

D.  s

    t

    u

5.score={'跳绳':85,'跳远':99,'跑步':92}。下列哪个代码可以将跳绳的85修改成95?(B)(2分)

A.score[跳绳]=95

B.score['跳绳']=95

C.score[0]=95

D.score['0']=95

6.已知列表a=[2,4,6],执行语句print(2*a),显示的结果是?(B)(2分)

A.[[2,4,6],[2,4,6]]

B.[2,4,6,2,4,6]

C.[4,16,36]

D.[4,8,12]

7.下列程序执行后,打印的结果是?(D)(2分)

a=[3,9,5]

b=a

b[0]=7

print(b)

A.[3,9,5]

B.[7,3,9,5]

C.[3,9,5,7]

D.[7,9,5]

8.

toy=['魔方','拼图']

toy.append('积木')

print(toy)

以上代码的运行结果是?(B)(2分)

A.['魔方','拼图',['积木']]

B.['魔方','拼图','积木']

C.['积木','魔方','拼图']

D.'魔方','拼图','积木'

9.

a=1

for i in range(4):

    if i==3:

       break

       a+=1

    else:

       a+=2

print(a)

以上代码的运行结果是?(D)(2分)

A.4

B.5

C.6

D.7

10.想要删除gift字典中的键值对'糖果':10,可以使用的代码是?(B)(2分)

A.gift.pop('糖果':10)

B.gift.pop('糖果')

C.gift.remove('糖果':10)

D.gift.remove('糖果')

11.在空格处填入以下哪个语句,不能得到从大到小的排序结果是?(A)(2分)

list1=[1,5,9,67,4,44,99]

for i in range(2):

    a=int(input())

    list1.append(a)

    _________________

for i in list1:

    print(i,end="")

A.list1.sort()

B.list1=sorted(list1,reverse=True)

C.list1.sort(reverse=True)

D.  list1.sort()

    list1=list1[-1::-1]

12.下列关于列表变量ls操作的描述中,错误的是?(B)(2分)

A.min(ls):找出ls中最小元素

B.ls.remove(x):删除ls中所有x元素

C.ls.index(x):返回元素x在列表中的下标

D.ls.copy():生成一个新列表,复制ls的所有元素

13.下面代码的输出结果是?(B)(2分)

name="Python语言程序设计"

for i in range(5):

    print(name[i],end='')

A.Python

B.Pytho

C.ython

D.Python语言程序

14.下列程序的运行结果是?(D)(2分)

str1="cat dog cat dog cat dog"

str2=str1.replace("cat","mouse",2)

print(str2)

A.cat dog mouse dog cat dog

B.2 dog mouse dog cat dog

C.mouse mouse dog mouse mouse dog cat dog

D.mouse dog mouse dog cat dog

15.下列程序的运行结果是?(D)(2分)

tem=(4,7,4,6,9)

tem=tem+(4,)

print(tem.count(4))

A.2

B.0

C.程序报错

D.3

16.下列说法正确的是?(D)(2分)

A.if语句通常用于重复执行某一段程序

B.while语句通常用于执行条件判断

C.在Python中可以使用do..while循环

D.break语句可以跳出for和while的循环体

17.已知有字符串str2="Good Morning!",则执行print(len(str2[1:-2]))输出的结果是?(C)(2分)

A.8

B.9

C.10

D.11

18.运行下列程序段后,输出的结果是?(B)(2分)

i=1

while i<=5:

    i=i+2

print(i)

A.3

B.7

C.5

D.6

19.运行语句print("ab"<"ac")后,输出的结果是?(C )(2分)

A.0

B.1

C.True

D.False

20.若a=[1,2],b=[3,4],则执行a=a+b语句后,a的值是?(C )(2分)

A.[1,2]

B.[4,6]

C.[1,2,3,4]

D.[3,4]

21.小明用列表s存储小组同学的身高,s=[136.0,135.0,142.0,140.0],则max(s)的值是?( C)(2分)

A.136.0

B.135.0

C.142.0

D.140.0

22.已知list8列表有8个元素,执行print(list8[1:-2])输出的结果是一个列表,则输出的列表有几个元素?( B)(2分)

A.4

B.5

C.6

D.7

23.下面的d是一个字典变量,能够输出数字9的语句是?(B )(2分)

d={'奥运奖牌':{'金牌':5,'银牌':4},'金牌':9,'银牌':4}

A.print(d['奥运奖牌']['金牌'])

B.print(d['金牌'])

C.print(d['奥运奖牌'][-1])

D.print(d['金牌'][1])

24.设有元组tup=(5,2,8,1,89,43,7,22),执行下列语句,结果是?(C)(2分)

tup1=sorted(tup)

print(tup1)

A.[89,43,22,8,7,5,2,1]

B.(89,43,22,8,7,5,2,1)

C.[1,2,5,7,8,22,43,89]

D.(1,2,5,7,8,22,43,89)

25.下列代码输出的结果是?(D)(2分)

tup=('python',2022,'神州十三号')

print(type(tup))

A.<class'dict'>

B.<class'set'>

C.<class'list'>

D.<class'tuple'>

二、判断题(共10题,共20分)

26.字典的元素可以通过键来访问,也可以通过索引(下标)来访问。(错)

27.Python中,可以通过索引来访问列表、字符串等序列,也可以通过索引对列表中的元素和字符串中的字符进行修改。例如:a='python',a[0]='P',字符串a将被修改为“Python”。(错)

28.break用来跳出最内层for或者while循环,脱离该循环后程序继续执行后续代码。(对)

29.单分支结构是用if语句判断满足一个条件,就执行相应的处理代码。( 对)

30.tem1=(1),用type(tem1)检查其类型应该为tuple。(错)

31.在语句for i in range(5):中,当进入第5次循环时,i的值为5。(错)

32.clear()方法可以移除列表中第一次出现的该元素。(错)

33.运行如下代码:

words="123abc"

slice1=words[-1::-1]

print(slice1)

结果为:“cba321”。(对)

34.元组中的元素值是不允许删除的,但我们可以使用del语句来删除整个元组。(对)

35.else保留字除了可以和if语句一起搭配使用构成if...else..,也可以和while或for循环搭配使用,构成while...else...和for...else...结构。(对)

三、编程题(共2题,共30分)

36.编写一个重复执行的程序,要求用户输入一个字符串。如果输入的字符串的长度是奇数,就输出字符串最中间的字符。如果字符串的长度是偶数,就输出字符串的最后一个字符。然后重复以上操作。

参考程序:

whileTrue:

a=input("请输入字符串:")

length=len(a)

if(length%2)==0:

    print(a[-1])

else:

    print(a[int(length/2)])

评分标准:

(1)能正确地要求用户输入字符串;(2分)

(2)使用len()方法计算字符串的长度;(3分)

(3)使用至少一个if判断;(2分)

(4)能正确判断用户输入的字符串的长度是奇数还是偶数;(4分)

(5)当用户输入的字符串长度为奇数时,能正确地截取字符串最中间的字符并输出;(4分)

(6)当用户输入的字符串长度为偶数时,能正确地截取字符串的最后一个字符并输出;(3分)

(7)程序可循环运行。(2分)

37.从键盘输入任意字符串,按照下面要求分离字符串中的字符:

1、分别取出该字符串的第偶数位的元素(提醒注意:是按照从左往右数的方式确定字符串的位置);

2、并依次存储到一个列表中;

3、输出这个列表。

参考程序:

a=input('请输入任意字符串:')

b=[]

for i in range(1,len(a),2):

    b+=a[i]

print(b)

评分标准:

(1)定义一个变量接受从键盘输入的字符串;(2分)

(2)for循环格式正确或者采用其他方法将偶数(或者所有)元素逐一取出;(3分)

(3)能够将取出的偶数位元素追加到列表中;(3分)

(4)输入列表正确。(2分)

  • 2
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值