GESP_2026年06月_Python二级试卷

从PDF导入:GESP_2026年06月_Python二级试卷

Python 120分钟 总分 100.0 27 题
试卷题目预览
第1题 中级 2.0分 单选
学校组织同学们到未来农场参观,小明听讲解员介绍。在智能温室中,湿度传感器可以连续检测土壤的湿度,并将检测到的湿度数据实时发送给中央控制器。中央控制器根据这些数据
A. 处理器
B. 存储器
C. 输入设备
D. 输出设备
第2题 中级 2.0分 单选
小明同学去郊外农场参观回来后,在自己的电脑中安装了一个 3D 农场仿真模拟系统。因为他今年买的这台二手电脑有点老旧,3D 农场仿真模拟系统运行时经常弹出"系统内
A. 机械硬盘
B. 内存条
C. 图形显卡
D. 移动硬盘
第3题 中级 2.0分 单选
有关如下 Python 代码的说法,正确的是( )。

a = 3 + 3.5
print(a)

A. 代码执行将报错。如果将 a = 3 + 3.5 改为 a = float(3) + 3.5 将能正常执行。
B. 代码执行将报错。如果将 a = 3 + 3.5 改为 a = 3.0 + 3.5 将能正常执行。
C. 代码能正常执行,将输出 6。
D. 代码能正常执行,将输出 6.5。
第4题 中级 2.0分 单选
下面选择项中,与 Python 表达式 not (x > 5 or y <= 10) 等价的是( )。
A. x <= 5 or y > 10
B. x > 5 and y <= 10
C. x <= 5 and y > 10
D. not x > 5 or not y <= 10
第5题 中级 2.0分 单选
某同学执行 Python 代码 print(2.5 + 2.25, 2.2 + 2.1) 时输出 4.75 4.300000000000001,其原因是( )
A. Python 的 + 运算符在处理浮点数时有时正确,有时错误
B. 某些浮点数难以精确表示,导致微小误差
C. + 运算符不能用于浮点数,只能用于整数
D. 因为 print() 函数难以输出太长的数值
第6题 中级 2.0分 单选
执行如下 Python 程序后,当输入 4 时,输出的最后一行是( )。

n = int(input())
for i in range(n, 0, -1):
for j in range(i):
print(j + 1, end="# ")
print()

A. 0#
B. 1#
C. 1#2#
D. 1#2#3#4#
第7题 中级 2.0分 单选
下面的 Python 代码执行后其输出是( )。

tnt = 0
for i in range(1, 5, 3):
for j in range(i):
tnt += 1
print(tnt, end = "# ")
print(tnt)

A. 1#5#5
B. 1#5#5#
C. 1#5#12#12
D. 0
第8题 中级 2.0分 单选
下面的 Python 代码执行后的输出是( )。

for i in range(-2, 2):
if not i % 3 == 0:
print(i, end = "# ")
print(i)

A. -2#-1#1#1
B. -2#-1#1#1#2
C. 1#2#2
D. 0#1#2
第9题 中级 2.0分 单选
下面的 Python 代码执行后其输出是( )。

cnt = 0
for i in range(3):
j = i
while j:
cnt += 1
j -= 1
print(i, j, cnt)

A. 2 0 3
B. 2 0 4
C. 2 0 5
D. 3 0 5
第10题 中级 2.0分 单选
下面 Python 代码执行后其输出是( )。

count = 0
for i in range(1, 4):
for j in range(i):
if j % 3 != 0:
continue
count += 1
break
print(i, j, count)

A. 4 0 4
B. 3 0 0
C. 3 2 0
D. 3 0 3
第11题 中级 2.0分 单选
如下 Python 代码执行后输出是 1 2 3 4 5 6 7 8 9 10 11 5 6 7 8 9 10 11 5 6 7 8 9 10 11 5 6 7

num = 1
for i in range(35):
print(num, end = " ")
__________

A. > //= +=
B. >= //= +=
C. > /= +=
D. > //= =+
第12题 中级 2.0分 单选
如下的 Python 代码用于输出如下数字图形。横线处应填入的代码是( )。

N = int(input())
for i in range(1, N + 1):
for j in range(1, N + 1):
if __________:
print(1, end = " ")
else:
print(0, end = " ")
print()

A. i == j and i == 1 and j == 1 and i == N and j == N
B. i == j or i == 1 or j == 1 or i == N or j == N
C. i == j or i == 0 or j == 0 or i == (N + 1) or j == (N + 1)
D. i == j and i == 1 and j == 1 and i == (N + 1) and j == (N + 1)
第13题 中级 2.0分 单选
corner case 通常翻译为极端案例或边角案例,通常指正常范围以外的问题或是情形。在如下 Python 代码中,corner case 是( )。

tnt, cnt = 0, 0
while True:
score = int(input())
if score == -1:
break
tnt += score
cnt += 1
print(tnt / cnt)

A. tnt, cnt = 0, 0 是 corner case,应分为两行
B. while True 是 corner case,因为 while True 将会导致死循环
C. score = int(input()) 是 corner case,因为 input() 应该有提示信息
D. print(tnt / cnt) 是 corner case,因为如果直接录入 -1,将导致错误,虽然这种情况较为罕见
第14题 中级 2.0分 单选
如下 Python 代码执行时,输入 4 后,输出的数字图形是( )。

n = int(input())
for i in range(n, 0, -1):
for j in range(n - i):
print(0, end= " ")
for k in range(i):
print(k + 1, end= " ")
print()
1 2 3 4
1 2 3 0
1 2 0 0
1 0 0 0
1 2 3 4
0 1 2 3
0 0 1 2
0 0 0 1
1 2 3 4
2 3 4 0
3 4 0 0
4 0 0 0
0 0 0 1
0 0 1 2
0 1 2 3
1 2 3 4

第15题 中级 2.0分 单选
某学校举办"校园演讲比赛",每位选手由 8 位评委打分(分数为 0~10 的整数),且每位评委必须打分。计分规则:去掉一个最高分,去掉一个最低分。如下程序通过键

for _ in range(10):
id = int(input("输入选手编号:"))
max_score, min_score = 0, 100 # 最高分和最低分
total_score = 0 # 总分
for i in range(1, 9):
score = int(input(f"输入选手第{i}个成绩: "))
if max_score < score:
max_score = score
if min_score > score:
min_score = score
total_score += score
total_score = total_score - max_score - min_score
print(f"{id}号选手的成绩:"
f" 去掉一个最高分{max_score},"
f" 去掉一个最低分{min_score},"
f" 最后成绩是:{total_score}")

A. 上述代码能完成题目要求
B. max_score, min_score = 0, 100 应修改为 max_score, min_score = 0, 0
C. max_score < score 和 min_score > score 必须相应修改为 <= 和 >=
D. total_score = total_score - max_score - min_score 不能达到预期,可修改如下:total = total_score - max_score - min_score; total_score = total
第16题 中级 2.0分 判断
又到期末考试周,小明发现这次许多闭卷考试不仅禁止携带手机、平板电脑,还有最近比较时髦的各类 AI 眼镜(也有叫智能眼镜)也同样不允许带入考场。这些 AI 眼镜应
T. 正确
F. 错误
第17题 中级 2.0分 判断
Python 代码 print(not (5 % 2 == 0) == ((not 5 % 2) == 0)) 执行后的输出是 True。
T. 正确
F. 错误
第18题 中级 2.0分 判断
执行 Python 代码 print(not 5) 将报错。
T. 正确
F. 错误
第19题 中级 2.0分 判断
下面 Python 代码执行后将输出 1-4-7 - 。

for i in range(1, 10, 3):
if not i % 3:
break
print(i, end = " - ")

T. 正确
F. 错误
第20题 中级 2.0分 判断
执行如下 Python 代码,将从小到大依次输出共 |N| 个整数,这里 |N| 表示 N 的绝对值,如 |3| = 3。

N = int(input())
start_num, end_num = 1, N + 1
if N < 0:
start_num, end_num = N, 0
for i in range(start_num, end_num):
print(i, end = " ")

T. 正确
F. 错误
第21题 中级 2.0分 判断
如下 Python 代码执行后,输出值为 9。

cnt = 0
for i in range(10):
for j in range(i):
cnt += 1
break
print(i)

T. 正确
F. 错误
第22题 中级 2.0分 判断
如下 Python 代码执行时如输入 10,输出将是 100。

cnt = 0
N = int(input("请输入正整数:"))
for i in range(N):
for j in range(-i, i):
cnt += 1
print(cnt)

T. 正确
F. 错误
第23题 中级 2.0分 判断
如下 Python 代码执行其输出是 3。

count = 0
i = 0
while i < 3:
j = 0
while j < 3:
if i + j >= 3:
count += 1
j += 1
i += 1
print(count)

T. 正确
F. 错误
第24题 中级 2.0分 判断
执行如下 Python 代码时,如果输入正整数,其输出为该正整数。

N = int(input())
i = 0
rst = 0
while N != 0:
rst = rst + N % 10 * 10 ** i
N //= 10
i += 1
print(rst)

T. 正确
F. 错误
第25题 中级 2.0分 判断
如下 Python 代码执行时如输入 5,将输出代码后的字符图形。

n = int(input())
for i in range(1, n + 1):
for j in range(1, n - i + 1):
print(0, end=" ")
for k in range(1, 2 * i):
if k <= i:
print(k, end=" ")
else:
print(2 * i - k, end=" ")
for j in range(1, n - i + 1):
print(0, end=" ")
print()
字符图形:
0 0 0 0 1 0 0 0 0
0 0 0 1 2 1 0 0 0
0 0 1 2 3 2 1 0 0
0 1 2 3 4 3 2 1 0
1 2 3 4 5 4 3 2 1

T. 正确
F. 错误
第26题 中级 25.0分 编程
. 完全平方数计数

小杨同学正在研究完全平方数。
平方:一个数的平方等于这个数乘以这个数本身。
完全平方数:指可以恰好表示为某个正整数的平方的数。
例如,9 是完全平方数,因为 9 = 3² = 3 × 3;但 27 不是,因为 27 不能表示为任何正整数的平方。
给定两个正整数 l 和 r(保证 l ≤ r),小杨同学想知道 l 到 r 之间的所有正整数中(包含 l 和 r),有多少个数是完全平方数。
1 ≤ l ≤ r ≤ 2000。

【输入格式】
输入两行,第一行为一个正整数 l,第二行为一个正整数 r。
【输出格式】
输出一个非负整数,表示 l 到 r 中,有多少个正整数是完全平方数。如果 l 到 r 中没有完全平方数,则输出 0。
【样例】
1
21
【样例解释】
4
第27题 中级 25.0分 编程
. 菱形

给定正整数 n,在 (2n - 1) × (2n - 1) 个网格的画布中,使用字符画一个边长为 n 个网格的菱形。其中,空白网格使用 "." 表示,菱形边所在的网格用 "+" 表示。
例如当 n = 3 时,图形如下:
..+..
.+.+.
+...+
.+.+.
..+..
3 ≤ n ≤ 15。

【输入格式】
输入一个正整数 n。
【输出格式】
输出 2n - 1 行,表示按要求画的菱形。
【样例】
4
【样例解释】
...+...
..+.+..
.+...+.
+.....+
.+...+.
..+.+..
...+...
💬