万卷网> GESP认证 >Python > 2024年12月CCF—GESP(Python三级)编程能力等级认证试卷

2024年12月CCF—GESP(Python三级)编程能力等级认证试卷
三级 2024 2025-05-29 16:14:48 86

一、单选题

1.

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

mylist = list(range(1, 13))
print(mylist[1::3])
A.

[3, 6, 9, 12]

B.

[2, 5, 8, 11]

C.

[1, 4, 7, 10]

D.

上述代码执行报错

2.

下列关于字符串的描述正确的是?( )

A.

多个字符串不能进行连接

B.

字符串是一个可变的序列

C.

“Hello”.find(“l”) 的结果是3

D.

字符串是用一对双引号" "或者单引号’ '括起来的零个或者多个字符

3.

小杨想编写一个程序来统计日志文件中每种错误出现的次数,这样可以方便他快速定位问题。他希望能够输入一段日志文件的内容后,程序就输出每种错误及其出现的次数。请在下面程序空白处填上正确内容以实现程序功能。

log = input("请输入日志文件内容:")
# 如输入:SyntaxError TypeError SyntaxError IndexError
error_count = {}
errors = log.split()
for error in errors:
	if error in error_count:
		_______________ # 填写代码 ①
	else:
		_______________ # 填写代码 ②
print("日志中每种错误出现的次数如下:")
for error, count in error_count.items():
	print(f"{error}: {count}")
A.

① error_count[error] += 1 ② error_count[error] = 1

B.

① error_count[error] = 1 ② error_count[error] += 1

C.

① error_count[error]++ ② error_count[error] = 1

D.

① error_count[error] = 1 ② error_count[error]++

4.

执行 print(10 ^ 3) 语句的输出结果是?( )

A.

9

B.

10

C.

30

D.

1000

5.

计算机系统中存储的基本单位用B来表示,比如某个照片大小为3MB,其中B代表的是( )。(2024.12-3)

A.

Byte

B.

Block

C.

Bulk

D.

Bit

6.

图书馆准备举办一次读书分享会,设计通知的过程中需要对一段文本进行编辑,文本由大小写英文字母和英文标点符号组成,根据活动主题,需要将文本中小写字母’b’替换为大写字母’B’。有一点要注意:第一个和最后一个’b’不用替换。请在下面程序空白处填上正确内容以实现程序功能。

s = input()
# 如输入:book boy beautiful bicycle box building
x = s.find('b')
y = s.rfind('b')
t = _______________ # 填写代码
t = t.replace('b', 'B')
print(s[0:x + 1] + t + s[y:])
A.

s[x:]

B.

s[x + 1:y]

C.

s[x:y]

D.

s[:y]

7.

十六进制数2024转换为八进制数是?( )

A.

3750

B.

20044

C.

11111101000

D.

10000000100100

8.

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

tuple1 = (4, 3, 2, 1)
tuple2 = (2)
print(tuple1 * tuple2)
A.

(4, 3, 2, 1)

B.

(8, 6, 4, 2)

C.

(4, 3, 2, 1, 4, 3, 2, 1)

D.

上述代码执行报错

9.

下列创建列表的方法中不正确的是?( )

A.

lst = [1, 2, ‘信息’]

B.

lst = [1]

C.

lst = [‘信息’,]

D.

lst = ‘音乐’, ‘体育’, ‘美术’

10.

2024年10月8日,诺贝尔物理学奖“意外地”颁给了两位计算机科学家约翰·霍普菲尔德(John J. Hopfield)和杰弗里·辛顿(Geoffrey E. Hinton)。这两位科学家的主要研究方向是( )。(2024.12-3)

A.

天体物理

B.

流体力学

C.

人工智能

D.

量子理论

11.

关于字典的描述错误的是?( )

A.

字典查找和插入的速度极快,通常不会随着 key 的增加而增加

B.

可以通过字典的键找到对应的值,也可以通过值来找到对应的键

C.

字典里面的值(不是键)可以包含列表和其它数据类型

D.

字典的元素以键为索引进行访问

12.

小杨想要编写一个程序来记录他每周的健身情况。他希望在输入每天健身的时间后,能够查看一周内健身的总时间。为了实现这个目标,请在下面程序空白处填上正确内容以实现程序功能。

gym_times = []
for i in range(1, 8):
	time = input(f"请输入第{i}天健身的时间:")
	gym_times.append(time)
	
print("一周内的健身情况如下:")
for i in range(7):
	print(f"第{i + 1}天健身的时间:{gym_times[i]}")
	
total_gym_time = sum(_______________) # 填写代码
print("一周内健身的总时间为:", total_gym_time)
A.

gym_times

B.

gym_times[:]

C.

time for time in gym_times

D.

int(time) for time in gym_times

13.

向集合 s = set() 中添加多个元素的方法是?( )

A.

add()

B.

update()

C.

extend()

D.

利用( += )运算符

14.

下列程序执行结果正确的是?( )

x = set("杜甫")
y = set("杜牧")
print(x & y)
A.

{‘杜’}

B.

{‘杜甫’}

C.

{‘杜牧’}

D.

{‘杜甫杜牧’}

15.

下列流程图的输出结果是?( )(2024.12-3)

A.

12

B.

13

C.

14

D.

15

二、判断题

1.

表达式 int(‘13’, 8) 的返回值是11。

A.正确 B.错误
2.

执行下列两段Python代码,输出的结果相同。

lst = [0, 1, 2, 3, 4, 5, 5, 3, 1]
a = []
for item in lst:
	if item not in a:
		a.append(item)
print(sorted(a))


lst = [0, 1, 2, 3, 4, 5, 5, 3, 1]
a = sorted(list(set(lst)))
print(a)
A.正确 B.错误
3.

编写 Python 程序模拟石头剪刀布游戏,数字 0 代表石头,数字 1 代表剪刀,数字 2 代表布,石头胜剪刀,剪刀胜布,布胜石头,模拟玩家出拳可以使用下面的程序代码。

import random
a = random.randint(0, 2)
A.正确 B.错误
4.

在Python中,使用乘法运算符 * 乘一个正整数可以对同一个字符串、列表、元组甚至是集合进行合并,即以下赋值语句都是合法的。

my_string = "123" * 3
my_list = [10, 20, 30] * 3
my_tuple = (10, 20, 30) * 3
my_set = {10, 20, 30} * 3
A.正确 B.错误
5.

“水仙花数”是指一个三位数各位数字的立方和等于该数本身,求100到999之间的所有水仙花数并统计个数。可以使用枚举的方法来求解这个问题。

A.正确 B.错误
6.

在Windows的资源管理器中为已有文件A建立副本的操作是Ctrl+C,然后Ctrl+V。

A.正确 B.错误
7.

Python代码 print(f"{3.1415926:06.3f}") 被执行后,输出为3.142。

A.正确 B.错误
8.

整数-8的16位反码可用十六进制表示为FFF8。

A.正确 B.错误
9.

运行下列代码,输出的结果可能是 {1: ‘1’, 2: ‘2’, 3: ‘3’} 。

a = ['1', '2', '3']
b = [1, 2, 3]
c = dict(zip(a, b))
print(c)
A.正确 B.错误
10.

Python代码 print([x for x in range(1, 11) if x % 2 == 1]) 被执行后,将得到从1到11所有的奇数,不含11。

A.正确 B.错误

三、编程题

1.

打印数字

时间限制:1.0 s

内存限制:512.0 MB

题面描述

小杨为数字0,1,2 和3设计了一款表示形式,每个数字占用了5×5的网格。数字0,1,2 和3的表示形式如下:

..... ****. ..... .....

.***. ****. ****. ****.

.***. ****. ..... .....

.***. ****. .**** ****.

..... ****. ..... .....

小杨想请你将给定的数字n转换为对应的表示形式。

输入格式

第一行包含一个正整数代表n。

输出格式

输出对应的表示形式。


输入样例

12230

输出样例

****.....................
****.****.****.****..***.
****.................***.
****..****.********..***.
****.....................

对于全部数据,保证有≤n≤106,且n仅由数字0,1,2,3 组成。

2.

数字替换

时间限制:1.0 s

内存限制:512.0 MB

题面描述

小杨有一个包含n个数字的序列A,即A={a1,a2,...,an},他想将其中大于k的数字都替换为序列的最大值,将其中小于 k 的数字都替换为序列的最小值,请你帮他计算出替换后的序列。

输入格式

第一行包含两个正整数n,k,含义如题面所示。

第二行包含n个数字,代表序列A。

输出格式

输出n个整数,代表替换后的结果。

输入样例

5 0
-2 -1 0 1 2

输出样例

-2 -2 0 2 2

对于全部数据,保证有1≤n≤105,∣k∣,∣ai∣≤105。


公众号
客服 反馈
顶部