理论卷2026年6月GESP等级认证(Python) · 六级

GESP Python 6级 2026.06

满分 100 · 及格 60 · 时长 60 分钟 · 共 27 题 (单选15 / 判断10 / 编程题2)
试卷阅览 · 免费预览前 10 题 · 交卷后可查看答案与解析
1
单选题号 #8372
分值 2

下列关于 Python 中继承和多态的描述中,错误的是( )。

A

当使用父类类型变量指向子类对象并调用方法时,会执行子类重写后的方法

B

子类通过重写父类中已有的方法,可以实现多态的效果

C

Python 中不需要手动声明虚方法,普通方法默认就支持多态调用

D

构造方法 __init__ 可以在运行时动态绑定,因此能像普通方法一样实现多态创建对象

2
单选题号 #8373
分值 2

下列代码中,执行 d1.work() 和 d2.work() 输出不同结果的主要原因是( )。

class Device:
    def work(self):
        print("Device is working")

class Printer(Device):
    def work(self):
        print("Printer is printing")

class Scanner(Device):
    def work(self):
        print("Scanner is scanning")

if __name__ == '__main__':
    d1 = Printer()
    d2 = Scanner()

    d1.work()
    d2.work()
A

Printer 和 Scanner 使用了相同的构造函数

B

子类重写了父类的 work 方法,Python 会根据对象实际类型调用对应版本的方法

C

d1 和 d2 是不同的变量

D

程序中使用了 del 释放对象

3
单选题号 #8374
分值 2

下面代码在 main() 中有一行会导致错误,请找出来( )。

class Student:
    def __init__(self, n, s):
        self.__name = n
        self.__score = s

    def get_name(self):
        return self.__name

    def set_score(self, s):
        self.__score = s

if __name__ == '__main__':
    stu = Student("Tom", 85)
    print(stu.get_name())   # ①
    stu.set_score(90)       # ②
    print(stu.__score)      # ③
    print(stu.get_name())   # ④
A

第 ① 行

B

第 ② 行

C

第 ③ 行

D

第 ④ 行

4
单选题号 #8375
分值 2

某文本编辑器把用户输入的字符依次压入栈 S。用户依次输入 X、Y、Z、W 后,连续执行两次撤销操作。每次撤销都会弹出栈顶一个字符。此时栈从栈底到栈顶的内容是( )。

A

X Y

B

X Y Z

C

Y Z

D

X Z

5
单选题号 #8376
分值 2

假设循环队列数组长度为 N=7N = 7,队空判断条件为 front == rear。入队和出队操作如下:

N = 7
q = [0] * N
front = 3
rear = 3

def enqueue(x):
    global rear
    q[rear] = x
    rear = (rear + 1) % N

def dequeue():
    global front
    front = (front + 1) % N

依次执行:

enqueue(10)
enqueue(20)
enqueue(30)
dequeue()
enqueue(40)
dequeue()
enqueue(50)

最终 (front, rear) 的值是( )。

A

(5, 1)

B

(4, 0)

C

(5, 0)

D

(3, 1)

6
单选题号 #8377
分值 2

以下函数 check() 用于判断一棵二叉树是否为( )。

from collections import deque

class TreeNode:
 def __init__(self, val=0, left=None, right=None):
 self.val = val
 self.left = left
 self.right = right

def check(root):
 if not root:
 return True

 q = deque()
 q.append(root)
 has_null = False

 while q:
 cur = q.popleft()

 if not cur:
 has_null = True
 else:
 if has_null:
 return False
 q.append(cur.left)
 q.append(cur.right)

 return True
A

满二叉树

B

完全二叉树

C

二叉搜索树

D

平衡二叉树

7
单选题号 #8378
分值 2

以下代码实现了二叉树的哪种遍历方式?( )

class TreeNode:
    def __init__(self, val=0, left=None, right=None):
        self.val = val
        self.left = left
        self.right = right

def traverse(root):
    if not root:
        return
    print(root.val, end=' ')
    traverse(root.left)
    traverse(root.right)
A

前序遍历

B

中序遍历

C

后序遍历

D

层序遍历

8
单选题号 #8379
分值 2

已知一棵二叉树的先序遍历序列为:A B D E H C F G,中序遍历序列为:D B H E A F C G,则该二叉树的后序遍历序列是( )。

A

D H E B F G C A

B

D E H B F G C A

C

H D E B F C G A

D

D H E B G F C A

9
单选题号 #8380
分值 2

有 66 个字符,它们出现的次数分别为:3,4,7,8,12,15{3, 4, 7, 8, 12, 15},现在用哈夫曼编码为这些字符编码,最小加权路径长度 WPL 的值为( )。

A

113113

B

119119

C

126126

D

3131

10
单选题号 #8381
分值 2

对 nn 个不同符号进行哈夫曼编码。若生成的哈夫曼树共有 6363 个结点,则 nn 的值是( )。

A

3131

B

3232

C

6363

D

6464

🔒

已解锁前 10 题

第 11~27 题(共 17 题)需开通题库会员或使用积分包作答
本卷为 VIP 试卷:需开通题库会员(无限刷)或购买积分包(每题 1 积分);已购长期正课学员自动享有权益
海小星AI平台海小星AI平台

点亮AI梦想,编程未来之星。专业的青少年AI编程教育平台。

课程方向

  • AIGC人工智能
  • Scratch图形化
  • Python编程
  • C++/NOIP竞赛

联系我们

  • 北京市西城区万博苑7号楼3层F28室
  • +86-010-83553010
  • contact@seanova.cn

© 2026 海小星AI平台|京ICP备2022032747号

隐私政策服务条款