2022年3月电子学会Python等级考试试卷(三级)答案解析

梁老师
梁老师 北京小升初老师~

0 人点赞了该文章 · 50 浏览






青少年软件编程(Python)等级考试试卷(三级)

分数:100  题数:38

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

1. 二进制数101100111对应的十六进制数的数值是? ( )


A. 6

B. 369

C. 167

D. 165

试题编号:20220210-ssn-001

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:B

考生得分:0

是否评分:已评分

评价描述:


2. Python中表示合法的八进制整数是? ( )


A. 0o129

B. 0o12A

C. 0O1708

D. 0O1207

试题编号:20220210-ssn-002

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:D

考生得分:2

是否评分:已评分

评价描述:


3. 在Python中,int('10',16)语句的作用是? ( )


A. 将十进制数10转化为十六进制数16

B. 将十六进制数10转化为十进制数16

C. 将字符串“10”转化为二进制整数

D. 将字符串“10”转化为十六进制整数

试题编号:20220210-ssn-003

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:

考生答案:B

考生得分:2

是否评分:已评分

评价描述:


4. 八进制7与十六进制7相加,其对应的十进制数是? ( )


A. 21

B. 7

C. 14

D. 77

试题编号:20220210-ssn-004

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:C

考生得分:2

是否评分:已评分

评价描述:


5. 关于语句f=open('c:/abc.csv', 'r'),下列描述不正确的是? ( )


A. f是变量名;

B. 以只读方式打开文件;

C. 如果文件abc.csv不存在,会创建abc.csv;

D. 'c:/abc.csv'代表c盘中一个名为'abc.csv'的文件。

试题编号:20220210-ssn-005

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:文件打开方式:r只读,不创建文件。

考生答案:B

考生得分:0

是否评分:已评分

评价描述:


6. 有如下从csv文件中读入数据的程序段:

f=open("abc.csv","r")

m=[]

for lines in f:

   m.append(lines.strip("\n").split("\"))

f.close()

print(m)

程序中存在错误的地方是? ( )


A. "r"

B. lines.strip("\n")

C. split("\")

D. f.close()

试题编号:20220210-ssn-006

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:D

考生得分:0

是否评分:已评分

评价描述:


7. 对于a=len([2,3,4,5,[7,8],(9,10)]),a的值是? ( )


A. 4

B. 6

C. 8

D. 7

试题编号:20220210-ssn-007

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:

考生答案:B

考生得分:2

是否评分:已评分

评价描述:


8. 有关Python文件常用读写方式的描述,错误的是? ( )


A. read() 每次读取整个文件

B. read() 生成的文件内容是一个字符串

C. readline() 每次只读取文件的一行

D. readlines() 每次按行读取整个文件内容,将读取到的内容放到一个字符串中

试题编号:20220210-ssn-008

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:readlines() 每次按行读取整个文件内容,将读取到的内容放到一个列表中

考生答案:A

考生得分:0

是否评分:已评分

评价描述:


9. add=['北京','上海','广州','深圳']

f=open('city.csv','w')

f.write(','.join(add)+'\n')

f.close()

下列说法错误的是? ( )


A. f=open('city.csv','w')说明当前是写入模式

B. f.write(','.join(add)+'\n')语句改成f.write(' '.join(add)+'\n'),程序运行效果一样

C. 删除f.close()语句,不能正确保存文件

D. 当前程序的功能是将列表对象输出到CSV文件

试题编号:20220210-ssn-009

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:

考生答案:C

考生得分:0

是否评分:已评分

评价描述:


10. 当发生异常时,下列描述正确的是? ( )


A. 需要捕获异常,然后进行相应的处理

B. 需要把可能发生错误的语句放在except模块里

C. 需要把处理异常的语句放在try模块里

D. 需要为每一个try模块设定且只能设定一个except模块

试题编号:20220210-ssn-010

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:

考生答案:A

考生得分:2

是否评分:已评分

评价描述:


11. 下列程序段在运行时输入"2",则输出结果是? ( )

try:

    a=eval(input())

    print(a)

except NameError:

    print('Error!')


A. ”2”

B. 2.0

C. Error!

D. 2

试题编号:20220210-ssn-011

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:D

考生得分:2

是否评分:已评分

评价描述:


12. 下列程序运行结果是? ( )

a="2"

b="3"

c=int(a+b)

print(c)


A. 5

B. "5"

C. 5.0

D. 23

试题编号:20220210-ssn-012

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:D

考生得分:2

是否评分:已评分

评价描述:


13. 执行代码a,b,c=sorted((1,3,2))之后,变量b的值为? ( )


A. 1

B. 3

C. 2

D. (1,3,2)

试题编号:20220210-ssn-013

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:C

考生得分:2

是否评分:已评分

评价描述:


14. x = min('5678'),下列选项中语法错误的一项是? ( )


A. print(max(float(x),7,6))

B. print(max(ord(x),7,6))

C. print(max(bin(x),7,6))

D. print(max(int(x),7,6))

试题编号:20220210-ssn-014

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:A

考生得分:0

是否评分:已评分

评价描述:


15. 以下表达式的值为Fasle的是? ( )


A. all (())

B. any(['0'])

C. any((0,))

D. all(['a','b'])

试题编号:20220210-ssn-015

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:B

考生得分:0

是否评分:已评分

评价描述:

16. 以下表达式的值为True的是? ( )


A. bool([])

B. bool(None)

C. bool("False")

D. bool(range(0))

试题编号:20220210-ssn-016

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:

考生答案:C

考生得分:2

是否评分:已评分

评价描述:


17. print(divmod(22,7))的运行结果是? ( )


A. 3.0

B. 3

C. [3,1]

D. (3,1)

试题编号:20220210-ssn-017

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:D

考生得分:2

是否评分:已评分

评价描述:


18. 下列表达式的结果与其他三项不相同的是? ( )


A. abs(-3.4)

B. round(abs(-3.4))

C. abs(round(-3.4))

D. min(round(3.4),round(3.8))

试题编号:20220210-ssn-018

试题类型:单选题

标准答案:A

试题难度:一般

试题解析:

考生答案:A

考生得分:2

是否评分:已评分

评价描述:


19. 关于ascii()函数,描述不正确的是? ( )


A. ascii()返回一个对象的字符串

B. ascii()返回一个对象的ASCII码的值

C. ascii()的返回值的类型必然是字符串

D. ascii(1)的结果是"1"

试题编号:20220210-ssn-019

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:

考生答案:B

考生得分:2

是否评分:已评分

评价描述:


20. 下列关于表达式的计算结果,不正确的是? ( )


A. bool(2*3-0)的值为“True”

B. bool(2*3-2)的值为“True”

C. bool(2*3-3)的值为“True”

D. bool(2*3-6)的值为“True”

试题编号:20220210-ssn-020

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:D

考生得分:2

是否评分:已评分

评价描述:


21. 下列输出结果为"1+2+3=6"的是? ( )


A. print(1+2+3=6)

B. print(1+2+3,'=6')

C. print(1,2,3,sep='+','=6')

D. print(1,2,3,sep='+',end='=6')

试题编号:20220210-ssn-021

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:D

考生得分:2

是否评分:已评分

评价描述:


22. 下列函数能创建一个新的列表的是? ( )


A. sorted()

B. list()

C. dict()

D. set()

试题编号:20220210-ssn-022

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:

考生答案:B

考生得分:2

是否评分:已评分

评价描述:


23. 关于算法的说法,下列说法正确的是? ( )


A. 采用顺序查找算法,一定能找到数据

B. 算法必须有输入和输出

C. 对分查找算法不需要对数据进行排序

D. 顺序查找算法不需要对数据进行排序

试题编号:20220210-ssn-023

试题类型:单选题

标准答案:D

试题难度:一般

试题解析:

考生答案:C

考生得分:0

是否评分:已评分

评价描述:


24. 有如下列表a=[8,7,9,6,3,8],采用冒泡排序进行降序排序,请问第2趟排序之后的结果是? ( )


A. [9,8,7,6,8,3]

B. [8,9,7,8,6,3]

C. [9,8,7,8,6,3]

D. [9,8,8,6,7,3]

试题编号:20220210-ssn-024

试题类型:单选题

标准答案:C

试题难度:一般

试题解析:第一趟的结果:[8,9,7,6,8,3],第二趟的结果:[9,8,7,8,6,3]。

考生答案:C

考生得分:2

是否评分:已评分

评价描述:


25. 有如下列表a=[8,7,9,6,3,8],采用选择排序进行升序排序,请问第2趟排序之后的结果是? ( )


A. [7,8,6,3,8,9]

B. [3,6,9,7,8,8]

C. [7,6,3,8,8,9]

D. [3,6,7,8,8,9]

试题编号:20220210-ssn-025

试题类型:单选题

标准答案:B

试题难度:一般

试题解析:第一趟的结果:[3,7,9,6,8,8],第二趟的结果:[3,6,9,7,8,8]。

考生答案:B

考生得分:2

是否评分:已评分

评价描述:


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

26. 在Python中,0x10010转化为十进制数是18。


正确 错误  

试题编号:20220210-ssn-026

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:

考生答案:错误

考生得分:2

是否评分:已评分

评价描述:


27. hex(int('12',16))的结果是'0x18’。


正确 错误  

试题编号:20220210-ssn-027

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:是'0x12’

考生答案:错误

考生得分:2

是否评分:已评分

评价描述:


28. 在Python中,可以使用下面代码读取文件中的数据到列表。

f = open('city.csv','r')

name = f.read().strip('\n').split(';')

f.close()


正确 错误  

试题编号:20220210-ssn-028

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:也可以用分号做为切片依据,但得到的name结果为:列表中只有一整个字符串元素。

考生答案:正确

考生得分:2

是否评分:已评分

评价描述:


29. 在Python中open('city.csv','r')命令的作用是以只读方式打开文件名为city的csv格式文件。


正确 错误  

试题编号:20220210-ssn-029

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:

考生答案:正确

考生得分:2

是否评分:已评分

评价描述:

30. 在Python中,向csv文件中写入数据时,用逗号合并列表name中的元素,可以使用f.write(','.join(name)+'\n')语句(f为文件对象名)。


正确 错误  

试题编号:20220210-ssn-030

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:

考生答案:错误

考生得分:0

是否评分:已评分

评价描述:


31. try-except-else-finally异常处理结构中,不论try程序段中的语句有没有错误,finally程序段中的语句都会得到执行。


正确 错误  

试题编号:20220210-ssn-031

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:

考生答案:正确

考生得分:2

是否评分:已评分

评价描述:


32. 在Python中,执行print(ascii(ord('A')+12))语句,打印一个整型数值结果。


正确 错误  

试题编号:20220210-ssn-032

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:

考生答案:正确

考生得分:0

是否评分:已评分

评价描述:


33. 在Python中,sorted()函数可以实现对列表中数据的排序,但排序后不改变原列表中数据的位置。


正确 错误  

试题编号:20220210-ssn-033

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:本题的主要考核sorted函数的用法

考生答案:错误

考生得分:0

是否评分:已评分

评价描述:


34. 在Python中,表达式divmod(26,10) 的输出结果为(2,6)或(3,-4)。


正确 错误  

试题编号:20220210-ssn-034

试题类型:判断题

标准答案:错误

试题难度:一般

试题解析:

考生答案:错误

考生得分:2

是否评分:已评分

评价描述:


35. 在Python中,chr(ord('b')-32)语句的功能是将小写字母b转换为大写字母B。


正确 错误  

试题编号:20220210-ssn-035

试题类型:判断题

标准答案:正确

试题难度:一般

试题解析:

考生答案:正确

考生得分:2

是否评分:已评分

评价描述:


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

36. 明明请你帮忙寻找100-999之间的所有“水仙花数”,并统计个数。“水仙花数”是指一个三位数各位数字的立方和等于该数本身。


例如:153=1*1*1+5*5*5+3*3*3。要求输出结果如下所示:


153

370

371

407


请编程实现上述功能,补全代码。


for i in range(      ):


   x=i


   a=x % 10


   x= (      )    


   b=x % 10


   c=x // 10


   if (      ):


      print(i)


试题编号:20200324-qdc-07

试题类型:编程题

标准答案:

参考程序:


for i in range(100, 1000):


    x = i

    a = x % 10

    x = x // 10

    b = x % 10

    c = x // 10

    if (a * a * a + b * b * b + c * c * c == i):

        print(i)


试题难度:一般

试题解析:

评分标准:


① 100,1000 或等效答案;(3分)


② x//10 或等效答案;(3分)

③ a*a*a+b*b*b+c*c*c==i 或等效答案。(4分)


展示地址:点击浏览

考生答案:(此题已作答)

考生得分:3

是否评分:已评分

评价描述:


37. 查找“支撑数”。在已知一组整数中,有这样一种数非常怪,它们不在第一个,也不在最后一个,而且刚好都比左边和右边相邻的数大,你能找到它们吗?输入一个数组,输出每个支撑数的数值以及它们在数组中位置编号。


示例:

输入:

    1 3 2 4 1 5 3 9 7 10 8 23 85 43

输出:

3   2

4   4

5   6

9   8

10   10

85   13


请编写程序实现上述功能,补全代码。


s=input()

x=s.split(' ')

a=[]

for i in range(0,len(x)):

   a.append(int(      )


b=[]

c=[]

n=0

for i in range(1,      ):

   if (a[i]>a[i-1] and      ):

      b.append(a[i])

      c.append(      )


for i in range(      ):

   print(b[i],' ',c[i])



试题编号:20200324-qdc-06

试题类型:编程题

标准答案:

参考程序:


s=input()

x=s.split(' ')

a=[]

for i in range(0,len(x)):

   a.append(int(x[i]))

b=[]

c=[]

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

   if (a[i]>a[i-1] and a[i]>a[i+1]):

      b.append(a[i])

      c.append(i+1)

for i in range(len(b)):

   print(b[i],' ',c[i])    


试题难度:一般

试题解析:

评分标准:


① x[i] 或等效答案;(3分)

② len(a)-1或等效答案;(3分)

③ a[i]>a[i+1] 或等效答案;(4分)

④ i+1 或等效答案;(3分)

⑤ len(b) 或等效答案;(3分)


展示地址:点击浏览

考生答案:(此题已作答)

考生得分:1

是否评分:已评分

评价描述:



  1. 请读取某班级语文学科的成绩文件score.txt的数据,数据内容如下图显示:


  2. 图片



下列代码实现了读取数据并对每个成绩从小到大排序后并输出,请你补全代码。

with open('/data/      ', 'r') as f:

    list = f.readlines()

for i in range(0, len(list)):

    list[i] = list[i].strip('\n')

    list[i]=  (    )

    (    )

print(list)

f.close


试题编号:20200410-yjm-02

试题类型:编程题

标准答案:

参考程序:

with open('/data/score.txt', 'r') as f:

    list = f.readlines()

for i in range(0, len(list)):

    list[i] = list[i].strip('\n')

    list[i]=int(list[i])

list.sort()

print(list)

f.close


试题难度:容易

试题解析:

评分标准:


(1) score.txt      (1分)


(2) int(list[i])     (1分)

(3) list.sort()     (2分)


展示地址:点击浏览

考生答案:(此题已作答)

考生得分:1

是否评分:已评分

评价描述:

图片


添加 家长论坛微信 



发布于 2024-04-25 11:07

免责声明:

本文由 梁老师 原创发布于 家长帮 ,著作权归作者所有。

登录一下,更多精彩内容等你发现,贡献精彩回答,参与评论互动

登录! 还没有账号?去注册

暂无评论

广告
All Rights Reserved Powered BY WeCenter V4.1.0 © 2025 京ICP备20005761号-2