2023年12月CCF-GESP编程能力等级认证Python编程三级真题

2024年03月05日

一、单选题(共15题,共30分)

第1题 某公司新出了一款无人驾驶的小汽车,通过声控智能驾驶系统,乘客只要告诉汽车目的地,车子就能自动选择一条优化路线,告诉乘客后驶达那里。请问下面哪项不是驾驶系统完成选路所必须的。( )

A:麦克风
B:扬声器
C:油量表
D:传感器

答案:C

第2题 现代计算机是指电子计算机,它所基于的是( )体系结构。

A:艾伦·图灵
B:冯·诺依曼
C:阿塔纳索夫
D:埃克特-莫克利

答案:B

第3题 下面Python代码执行后 a 的类型不为 dict 的是( )。

A:a = {}
B:a = dict()
C:a = {i: i ** 2 for i in range(10)}
D:a = {1}

答案:D

第4题 在Python代码中,已执行 lst=list(range(100)) ,下面能反序输出偶数,形如: [98,96,…,0] 的是( )。

A:print(lst[-2::-2])
B:print(lst[-1::-2])
C:print(lst[:- 1:-2])
D:print(lst[-2:0:-2])

答案:A

第5题 下面Python代码执行后不能输出 GESP 的是( )。

A:print(“CCF GESP”[-4:])
B:print(“CCF GESP”[4:])
C:print(“CCF GESP”[-4::])
D:print(“CCF GESP”[4:-1])

答案:D

第6题 执行Python代码 print(len([f"{i}*{j}" for i in range(10) for j in range(1,10,2) if i*j %2])) 输出是( )。

A:100
B:50
C:25
D:0

答案:C

第7题 执行Python代码 print(list(‘Ax1’).sort()) 后,输出是( )。

A:[‘1’, ‘A’, ‘x’]
B:[‘1’, ‘x’, ‘A’]
C:None
D:触发异常,无输出

答案:C

第8题 执行Python代码 print(reversed(‘Ax1’)) 后输出的是( )。

A:[‘1’, ‘x’, ‘A’]
B:1Ax
C:[‘1’, ‘A’, ‘x’]
D:以上输出均错误

答案:D

第9题 执行Python代码 print(sorted(‘Ax1’)) 后输出的是( )。

A:[‘1’, ‘A’, ‘x’]
B:[‘1’, ‘x’, ‘A’]
C:“1Ax”
D:以上输出均错误

答案:A

第10题 下面Python代码执行后的输出是( )。

A:[2.2, 1.1, 1.3, -1.1, -2.2]
B:[2.2, 1.3, 1.1, -1.1, -2.2]
C:[-2.2, -1.1, 1.1, 1.3, 2.2]
D:[1.1, 1.1, 1.3, 2.2, 2.2]

答案:A

第11题 下面Python代码用于统计每种字符出现的次数,横线上应填入代码是( )。

A:dictCount[c] + 1
B:dictCount.get© + 1
C:dictCount.get(c, 1)
D:dictCount.get(c, 0) + 1

答案:D

第12题 Python变量 strNovel 中存储有某小说的全部文本内容,如果要获得该小说用了多少个不同的字符,应该使用的表达式是( )。

A:len(strNovel)
B:strNovel.count()
C:len(set(strNovel))
D:strNovel.index()

答案:C

第13题 Python表达式 [x for x in range(20) if x % 3 if x % 5] 的值是( )。

A:[15]
B:[0, 15]
C:[3, 6, 9, 12, 18]
D:[1, 2, 4, 7, 8, 11, 13, 14, 16, 17, 19]

答案:D

第14题 Python的 int() 函数可以将全部是数字组成的字符串转换为整数,假设不包含正负符号和小数点如12.5 、 -12 等。下面代码模拟该函数的功能,横线处应填入代码是( )。

A:rst * 10 + ord(i)-ord(‘0’)
B:rst * 10 + chr(i)-chr(‘0’)
C:rst * 10 + ord(i)
D:rst + ord(i)-ord(‘0’)

答案:A

第15题 Python代码用于抽取字符串中的电话号码。约定:电话号码全部是数字,数字之间没有其他符号如连字符或空格等。代码中变量strSrc仅仅是示例,可以包含更多字符。下面有关第10、11、12行代码说法,正确的说法是( )。

A:第10到12行代码有语法错误,应与第7行的 if 对齐
B:第10到12行代码的功能与第7到9行代码功能相同,可以删除
C:第10到12行代码与 for 对齐,所以有语法错误,应删除
D:第10到12行代码不能删除且没有语法错误,当电话号码出现在字符串结束时,否则将不能输出该号码

答案:D

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

第16题 小杨最近在准备考GESP,他用的Python IDLE来练习和运行程序,所以Python IDLE也是一个小型操作系统。( )

答案:错误

第17题 任何一个 while 循环都可以转化为等价的 for 循环( )。

答案:错误

第18题 执行Python代码 print(5&2) 后将输出0。( )

答案:正确

第19题 Python表达式 len(“12,34,56”.split(“,”)) 的值为3。 ( )

答案:正确

第20题 执行Python代码 print(5 or 2) 后将输出 True 。( )

答案:错误

第21题 已执行Python代码 a=“china”a.replace(‘c’,‘C’) 之后 print(a) 后将输出 China 。( )

答案:错误

第22题 执行Python代码 print(list(filter(lambda n:n % 5 == 0,range(10)))) 后将输出 [0, 5] 。( )

答案:正确

第23题 下面Python码执行后将输出 [0, 5] 。( )

答案:正确

第24题 Python表达式 [1]*10 将形成一个有10个成员的 list ,每个成员的值为1。( )

答案:正确

第25题 执行Python代码 print(list(range(100)).sort(key=lambda x:x%2)) 将输出一个 list ,偶数为前半部分,奇数为后半部分。( )

答案:错误

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

第26题 小猫分鱼

第27题 单位转换