视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
2023年12月青少年软件编程Python等级考试二级真题(含答案)
2025-10-04 17:56:53 责编:小OO
文档
2023年12月电子学会Python二级考试真题(含答案)

分数:100      题数:37

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

1.给定字符串s,下列表示s最后一个字符的是?(   )

A.s[:-1]

B.s[1]

C.s[0:-1]

D.s[-1]

答案:D

2.运行下列代码,终端区打印的结果是?(   )

nums = [1, 2, 3, 4]

nums.append(nums[4])

print(nums)

A.[1, 2, 3, 4, 5] 

B.[1, 2, 3, 4, 4]

C.[1, 2, 3, 4]

D.终端区会报错

答案:D

3.下列哪个选项是元组类型的数据?(   )

A.[1, 2, 3]

B.(1, 2, 3)

C.{1, 2, 3}

D.{1:'小明', 2:'小李'}

答案:B

4.下列代码片段执行的结果是?(   )

poet=[{'唐':['李白','王维','孟浩然'],'宋':['苏轼','陆游','王安石']},'618年-907年',['960年-1279年']]

print(len(poet))

A.1

B.2

C.3

D.4

答案:C

5.下列代码运行的结果是?(   )

ls=['富强','民主','文明','和谐','自由','平等','公正','法治']

print(ls[::2])

A.['富强','民主','文明','和谐'] 

B.['自由','平等','公正','法治']

C.['法治', '平等', '和谐', '民主']

D.['富强', '文明', '自由', '公正']

答案:D

6.阿宝想在屏幕终端上打印出文字“我的名字叫阿宝,我今年10岁了,我的爱好是编程。”, 阿宝已经定义的变量如下:

name='阿宝'

age=10

hobby='编程'

下列输出语句错误的是?( )

A.print('我的名字叫{1},我今年{0}岁了,我的爱好是{2}。'.format(age,name,hobby))

B.print('我的名字叫{},我今年{}岁了,我的爱好是{}。'.format(name,hobby,age))

C.print('我的名字叫%s,我今年%d岁了,我的爱好是%s。'%(name,age,hobby))

D.print('我的名字叫%s,我今年%s岁了,我的爱好是%s。'%(name,age,hobby))

答案:B

7.ls=[3,7,2,1]

for i in range(3,0,-1):

    for j in range(i):

        if ls[j]>ls[j+1]:

            ls[j],ls[j+1]=ls[j+1],ls[j]

print(ls)

以上程序打印的结果是?(   )

A.[1,3,2,7]

B.[1,2,3,7]

C.[3,2,1,7]

D.[1,7,3,2]

答案:B

8.下列程序运行后,输出的结果是?(   )

list = ['春季', '夏季', '秋季', '冬季', '1+1', 6+1, 'ab']

print(list[0])

print(list[5])

print(list[6])

print(list[4])

A.春季

6+1

ab

1+1

B.春季

7

ab

1+1

C.春季

7

ab

2

D.冬季

7

ab

1+1

答案:B

9.运行下列程序,输出的结果是?(   )

s1 = "Good \\n"

s2 = "Morning."

print(s1 + s2)

print(len(s1))

A.Good Morning.

6

B.Good

Morning.

6

C.Good Morning.

7

D.Good

Morning.

7

答案:B

10.请问下列程序运行后,输出结果应该是?(   )

t1 = (2, 3, 4, 5)

t2=t1*2

print(min(t2)+max(t2)+len(t2))

A.15

B.14

C.13

D.12

答案:A

11.ls = ["cat", "dog   )

A.ls.append('monkey') 

B.ls.insert('monkey')

C.ls.extend('monkey')

D.ls.add('monkey')

答案:A

12.下列选项不属于分支结构语句的是?(   )

A.if

B.elif

C.else

D.then

答案:D

13.执行下列程序代码,得到的输出结果是?(   )

i = 1

while i < 10 :

    i += 1

print(i

A.1

B.9

C.10

D.11

答案:C

14.下列语句创建了一个Python字典的是?(   )

A.{ }

B.{a,bb,ccc}

C.[a,bb,ccc]

D.(a,bb,ccc)

答案:A

15.下列哪个语句,是用来告诉Python跳过当前循环的剩余语句,然后继续进行下一轮循环?(   )

A.exit

B.pass

C.break

D.continue

答案:D

16.在下列选项中,哪个选项可以正确地从字典里,获取'西瓜'这个字符串?(   )

name_dict = {1:'西瓜', 2:'南瓜'}

A.name_dict['西瓜']

B.name_dict['南瓜']

C.name_dict[1]

D.name_dict[2]

答案:C

17.下列选项中,对下面程序的打印结果描述正确的是?( )

a = [0, 1, 2, 3]

i = len(a) - 1

while i > 0:

    print(a[i])

    i -= 1

A.3

2

1

B.1

2

3

C.0

1

2

3

D.3

2

1

0

答案:A

18.已知列表ls = list(range(1,13,3)),下列哪个命令能够获得列表中的倒数第二个元素?(   )

A.ls[3]

B.ls[4]

C.ls[-1]

D.ls[-2]

答案:D

19.已知字符串str = "Happy birthday",则执行print(list(str))的输出结果是?(   )

A.['H','a','p','p','y','b','i','r','t','h','d','a','y']

B.[H,a,p,p,y,b,i,r,t,h,d,a,y]

C.['H','a','p','p','y',' ','b','i','r','t','h','d','a','y']

D.[H,a,p,p,y, ,b,i,r,t,h,d,a,y]

答案:C

20.下列说法正确的是?(   )

A.sort函数对列表排序后,不会改变原有列表

B.sort函数排序时,对于列表中的元素数据类型没有要求

C.sort函数默认是按照从大到小的顺序进行排序的

D.sort函数如果加入 reverse=False,就会按照从小到大的顺序排序

答案:D

21.下列选项中,哪个选项的代码会报错?(   )

A.t = (1, 2)

t[1] = 5

B.t = (1, 2)

a = sorted(t)

C.t = (1, 2)

t[0:1]

D.t = (1, 2)

sum(t)

答案:A

22.下列选项中,不能从字典中删掉'xiaoming'的是?(   )

dic = {'name': 'xiaoming','age': 8}

A.del dic['name'] 

B.dic['name'] = 'clever'

C.dic.clear()

D.dic.pop(0)

答案:D

23.执行下列语句后,输出是?(   )

dict0 = {"apple": 3, "banana": 5, "orange": 2}

dict0["banana"] += 2

dict0["grape"] = 4

dict0["grape"] += 4

print(dict0["grape"])

A.2

B.4

C.6

D.8

答案:D

24.执行下列程序,输入10,则y的值是?( )

x = int(input())

if x!=0:

    if x>0:

        y=-1

    else:

        y=1

else:

    y=0

A.0

B.1

C.-1

D.10

答案:C

25.下列代码执行后的输出是?(   )

mylist= [1, 2, 3, 4, 5]

newlist = mylist[1:4]

newlist.append(6)

print(newlist

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

B.[1, 2, 3, 6]

C.[2, 3, 4, 6]

D.[2, 3, 4, 5, 6]

答案:C

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

26.可以使用[ ]创建列表。(   )

答案:对

27.break 语句执行后,程序就会跳出本次循环,继续进行下一轮循环。(   )

答案:错

28.字符串、列表和元组都是有序的,它们的区别是字符串和列表都可以切片而元组不可以切片。(   )

答案:错

29.定义元组后,可以像访问列表那样,通过索引的方式访问元组元素。(   )

答案:对

30.a = " %s ! 第 %d 名!" % ('Python', 1)

print(a)

这个程序段运行后,显示的输出结果是:Python ! 第 1 名!(   )

答案:对

31.字典是Python语言中的一种数据结构,用来存储键值对。(   )

答案:对

32.for循环一般用于循环次数已知的情况。所有的for循环都可以用while循环改写。(   )

答案:对

33.Python中的双分支结构必须要有elif才能实现。(   )

答案:错

34.if语句中可以嵌套while,while语句中可以嵌套if。(   )

答案:对

35.str1和str2分别是字符串类型,则str1+str2表示str1与str2两个字符串连接,str1-str2表示从str1中减去str2的字符串。(   )

答案:错

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

36.密码判断:编写一段能够实现密码判断功能的Python代码。

要求:

(1)程序运行开始后,用户通过键盘输入密码(格式为字符串);

(2)如果密码错误,让用户继续输入密码;

(3)如果密码正确,屏幕输出“密码正确,欢迎您!”,并终止循环,结束程序;

(4)正确的密码可以在程序中明确,无需用户输入。

示例:

如:程序中的密码为:123456 

程序运行后提醒用户输入密码,密码错误没有提示,继续要求输入密码,如果密码正确,则屏幕输出“密码正确,欢迎您!”并且结束程序。

参考程序:

correct_password = '123456'  

while True:  

    password = input("请输入密码:")  

    if password == correct_password:  

        print("密码正确,欢迎您!")  

        break  

37.蚂蚁是自然界的大力士:一只蚂蚁能够举起自身体重40倍的物体,能够拖运自身体重1700倍的物体。蚂蚁十分勤劳,为了保证以最快速度完成搬运,能够举起物体时绝不拖运。

现已知某只蚂蚁的体重为50毫克,地上的10块食物重量(单位:毫克)为500,60000, 25,1200, 2200, 1800, 10000, 80000, 3000, 65.请帮蚂蚁编程计算,可以举起和需要拖运的食物各有几个?

要求:

(1)必须使用列表或者元组;

(2)输出格式为:“该蚂蚁可以举起的食物有*个,可以拖运的食物有*个。”(不含引号);

(3)提醒:根据题意,“能够举起物体时绝不拖运”,所以拖运的食物和举起的食物不会重复。

参考程序:

ant_weight = 50  

food_weights = [500, 60000, 25, 1200, 2200, 1800, 10000, 80000, 3000, 65]  

can_lift = 0  

can_drag = 0  

max_lift_weight = ant_weight * 40  

max_drag_weight = ant_weight * 1700  

for weight in food_weights:  

if weight <= max_lift_weight:

        can_lift += 1  

elif weight <= max_drag_weight:

        can_drag += 1  

print(f"该蚂蚁可以举起的食物有{can_lift}个,可以拖运的食物有{can_drag}个。")下载本文

显示全文
专题