万卷网> 电子学会考级 >Python等级考试 > 2026年3月电子学会青少年软件编程(Python六级)等级考试试卷

2026年3月电子学会青少年软件编程(Python六级)等级考试试卷
客观题 六级 2026 2026-05-01 19:01:58 142

一、单选题

1.

以下关于 CSV 文件的描述,正确的是? ( )

A.

CSV 文件只能存储一维数据

B.

CSV 文件中每一行数据必须包含相同数量的元素

C.

CSV 文件的扩展名可以随意修改

D.

CSV 文件中数据之间只能用逗号分隔

2.

在tkinter中,什么方法可以实现按照行、列的方式摆放组件?( )

A.

place()

B.

grid()

C.

pack()

D.

geometry()

3.

小明想创建一个汽车类 Car 的对象,表示一辆2025年生产的丰田卡罗拉,以下哪行代码可以正确创建这个实例?( )

A.

Car("Toyota", "Corolla", 2025)

B.

car = Car.make("Toyota", "Corolla", 2025)

C.

car = Car("Toyota", "Corolla", 2025)

D.

car = make.Car("Toyota", "Corolla", 2025)

4.

运行下面哪一段Python程序,可以正确向文件a.txt中写入“测试写入”四个字? ( )

A.
f=open('a.txt','w')
f.write('测试写入')
B.
with open('a.txt','r') as f: 
         f.write('测试写入') 
         f.close()
C.
with open('a.txt','w') as f: 
         f.write('测试写入')
D.
f=open('a.txt','w') 
f.write('测试写入')
f.flush()
5.

关于Python中SQLite数据类型说法错误的是? ( )

A.

整数使用INT,如:3,6,-8

B.

字符串使用TEXT,如:“computer”

C.

浮点数使用REAL,如:6.15

D.

二进制文件使用BLOB,如:图片

6.

以下哪种 tkinter 的布局管理器能够按照从左到右、从上到下的顺序排列控件? ( )

A.

grid 布局

B.

pack 布局

C.

place 布局

D.

middle布局

7.

在 tkinter 中,以下哪个语句用于创建主窗口? ( )

A.

root = tk.Tk()

B.

root = tk.Window()

C.

root = tk.MainWindow()

D.

root = tk.Frame()

8.

关于打开文件的方法,以下说法正确的是? ( )

A.

如果文件a.txt有多行字符,运行以下程序将输出所有内容

with open("a.txt","r") as f:
   print(f.readline())
B.

如果文件a.txt有多行字符,运行以下程序将输出第1行的内容

with open("a.txt","r") as f:
   print(f.readlines()[1])
C.

使用open()方法打开文件,运行完后可以不加close()

D.

使用with open("a.txt","r") as f: 打开文件a.txt,运行后可以不加f.close(),文件a.txt可以自动关闭

9.

小明获取到各旅游景点周一到周日的游客情况,并存储在一个“tourist_data.csv”文件中,其文件内部分内容如下图所示:

import csv 
total_visitors = [] 
with open('tourist_data.csv', 'r') as f:
     reader = csv.reader(f)
     for row in reader:
         total = sum([int(num) for num in row[1:]])
         total_visitors.append(total)
 print(total_visitors)

假设 tourist_data.csv 文件存在,但运行上述代码时出现 FileNotFoundError 异常,可能的原因是什么? ( )

A.

tourist_data.csv 文件路径错误

B.

csv 模块导入错误

C.

csv.reader 使用方法错误

D.

sum 函数使用错误

10.

关于Python中SQLite说法错误的是? ( )

A.

有同学向数据库中插入数据后关闭程序,打开数据库文件发现没有插入成功,原因可能是因为没有conn.commit()语句

B.

可以使用conn.execute('''SQL语句''')执行SQL语句

C.

同一个数据库可以包含多个表

D.

使用conn = sqlite3.connect('example.db')连接数据库时,如果example.db不存在,程序会报错

11.

某Pyhon程序如下,运行后输出的结果为? ( )

scores = [[80, 85, 90], [75, 80, 88], [92, 95, 98]]
average_scores = []
for i in range(len(scores)):
        total = 0
        for j in range(len(scores[i])):
                total += scores[i][j]
        avg = total / len(scores[i])
        average_scores.append(avg)
print(average_scores)
A.

[85, 81, 95]

B.

[85.0, 81.0, 95.0]

C.

[80, 75, 92]

D.

[85, 80, 95]

12.

小明写一个 Phone 类来模拟手机使用过程。他希望能更新手机电量,用方法 update_battery() 来完成。下面哪个方法定义可以正确修改实例的电量属性?( )

A.
def update_battery(percent):
    self.battery = percent
B.
def update_battery(self, percent):
    self.battery = percent
C.
def update_battery(self, percent):
    battery = percent
D.

def update_battery(self):

    self.battery == percent

13.

下列关于数据的说法,不正确的是? ( )

A.

一维数据可由列表表示,也可用集合表示

B.

一维数据采用线性方式组织,必须是有序的

C.

二维数据可由二维列表表达,也可由表格或csv格式的文件表达

D.

二维数据由多个一维数据构成

14.

已知数据库题库.db的内容如下图所示,编写程序输出数据库中所有记录,空白处应选择的语句是?( )

import sqlite3
k= sqlite3.connect('题库.db')
a = k.cursor()
a.execute('SELECT rowid, 题目, 答案 FROM tiku ORDER BY rowid')
for row in _____________:
    print(f"{row[1]}{row[2]}")
a.close()
k.close()
A.

k.fetchall()

B.

k.fetchmany()

C.

a.fetchall()

D.

a.fetchmany()

15.

运行程序后,不能在txt文件中输出以下内容的Python程序是? ( )

姓名:

性别:

A.
with open("t.txt","w+") as t1: 
             t1.write("姓名:\n性别:")
B.
a='姓名:\n性别:' 
with open("t.txt","w") as t1: 
         t1.write(a)
C.
with open("t.txt","w") as t1:
             t1.write("姓名:") 
             t1.write("性别:")
D.
with open("t.txt","w") as t1:
             t1.write("姓名:")
             t1.write("\n性别:")
16.

在Python中,下面代码的输出结果?( )

import numpy as np
arr = np.array([1, 2, 3, 4, 5])
print(arr[::2].sum())
A.

15

B.

9

C.

6

D.

报错

17.

关于Python中SQLite说法正确的是?( )

A.

创建表格结构时,只能使用大写字母,如: cursor.execute('''CREATE TABLE TIKU (题目 TEXT NOT NULL,答案 TEXT NOT NULL)''

B.

建立数据库连接和游标后必须关闭连接,关闭游标和关闭数据库的顺序没有要求。 如:

已知:

k= sqlite3.connect('题库.db') 

a = k.cursor()

使用k.close();a.close() 和a.close();k.close()都可以正常运行。

C.

建立数据库实例时命名方式与变量命名规则相同,如:conn = sqlite3.connect('题库.db')

D.

语句execute()执行一条SQL语句 ,语句executemany可执行多条SQL语句,语句之间用逗号分开。

18.

有如下Python代码,如果执行:print(d.sound()),结果是? ( )

class Animal:
    def sound(self):
        return "叫声"
class Dog(Animal):
    def sound(self):
        return "汪汪"
a = Animal()
d = Dog()
A.

"叫声"

B.

"汪汪"

C.

报错,子类不能重写父类方法

D.

无输出

19.

在Python编程中,使用tkinter模块创建GUI应用程序时,可以使用什么方法来显示窗口?( )

A.

create()

B.

run()

C.

show()

D.

mainloop()

20.

小明编写一段Python程序,让全班同学通过输入学号的方式进行签到,未签到的同学学号记录在文件student.txt中。以下说法错误的是? ( )

A.

打开文件student.txt不能使用r和rb模式

B.

文件student.txt可以保存于电脑中任意位置,如桌面,打开文件时设置好文件路径即可

C.

假如共有50名学生,学号从1到50。可以先在文件student.txt中输入50个学号,每行一个学号。每签到一人,就从文件中删除一个学号,班主任可以随时查看文件student.txt,以了解未到班的学生

D.

不论如何编写程序,程序关闭后重新启动,对于已经签到的同学都只能重新签到

21.

某家具工厂需要批量计算板材的体积,使用了下面这个类:

class Board:
    def __init__(self, l, w, h):
        self.l = l
        self.w = w
        self.h = h

如果要增加一个方法get_volume()返回体积,以下定义最合适的是?( )

A.
def get_volume(l, w, h):
    return l * w * h
B.
def get_volume():
    return self.l * self.w * self.h
C.
def get_volume(self):
    return self.l * self.w * self.h
D.
def get_volume(self, l, w, h):
    return l * w * h
22.

编写Python程序,绘制如下图所示的直线,程序空白处应填?( )

import matplotlib.pyplot as p
import numpy as np
x= np.array([0,1,2,3,4,5])
p.       (x,'o:r')
p.show()
A.

bar

B.

bath

C.

plot

D.

lib

23.

在一个电商系统中,服务器接收到客户端发送的包含商品信息(如名称、价格、库存数量等)的 JSON 字符串,需要将其解析为 Python 对象进行处理。以下代码能正确解析 JSON 字符串的是?( )

A.
import json
json_str = '{"name": "iPhone", "price": 999, "quantity": 10}'
data = json.load(json_str)
print(data)
B.
import json
json_str = '{"name": "iPhone", "price": 999, "quantity": 10}'
data = json.loads(json_str)
print(data)
C.
import json
json_str = '{"name": "iPhone", "price": 999, "quantity": 10}'
data = json.dump(json_str)
print(data)
D.
import json
json_str = '{"name": "iPhone", "price": 999, "quantity": 10}'
data = json.dumps(json_str)
print(data)
24.

在Python中,以下代码的功能是?( )

import matplotlib.pyplot as plt
x=1;y1=2;y2=3
plt.figure(figsize=(8,4))
plt.subplot(121)
plt.plot(x, y1)
plt.subplot(122)
plt.hist(y2)
plt.show()
A.

创建柱状图

B.

叠加绘制两种图形

C.

创建折线图和散点图

D.

创建1行2列的子图布局及并排的折线图和直方图

25.

在Python中,以下代码的输出结果是?( )

arr = np.arange(6).reshape(2,3)
A.

print(arr[:, ::-1])

B.

[[2 1 0] [5 4 3]]

C.

[[0 1 2] [3 4 5]]

D.

[[3 4 5] [0 1 2]]

二、判断题

1.

在Python的matplotlib库中,plt.bar()函数可用来绘制柱状图。( )

A.正确 B.错误
2.

以下代码创建了一个简单的图形界面,但点击按钮时没有反应,问题出在没有设置 command 参数绑定事件处理函数。( )

from tkinter import *
def show_message():
    message_label.config(text="按钮被点击了!")
root = Tk()
message_label = Label(root, text="等待点击...")
message_label.pack()
my_button = Button(root, text="点击我")
my_button.pack()
root.mainloop()
A.正确 B.错误
3.

某API接口返回用户信息的JSON数据如下:

{ 
  "user_id": 101, 
  "orders": [ 
    {"product": "Book", "price": 29.9}, 
    {"product": "Pen", "price": 5.5} 
  ] 
}

使用Python的json库反序列化后,可直接通过data["orders"][0].price获取第一条订单价格。( )

A.正确 B.错误
4.

已知某数据库的表tiku结构为:rowid、题目、答案,列表a=[('4/2=', '2'), ('6/2=', '3'), ('6/3=', '2')]

执行以下主要语句可以将题目和答案加入到tiku中

cursor.executemany('INSERT INTO tiku (题目, 答案) VALUES (?, ?)', a)

A.正确 B.错误
5.

在Python中,matplotlib使用plt.title()函数设置图表标题。( )

A.正确 B.错误
6.

小明设计一个类,只给了构造方法 __init__,没有写其他方法。他说:“我这个类已经可以用了,虽然不能计算,但能创建对象和存储属性。”( )

A.正确 B.错误
7.

如果一个子类继承了父类,子类就不能定义自己的属性和方法。( )

A.正确 B.错误
8.

已知C盘根目录存储了一个文件user.txt,内容只有一行密码。运行如下程序,不会报错,实现验证密码。( )

with open("C:\user.txt","r") as t:
    a=input("输入密码:")
    if a==t.readline():
        print("登陆成功")
    else:
        print("密码错误")
A.正确 B.错误
9.

运行以下代码能实现将一维数据列表保存为 CSV 文件中的功能。( )

import csv
data = [88, 95, 93, 84, 85]
with open('data.csv', 'w') as f:
        f.write(data)
A.正确 B.错误
10.

已知datetime库中的datetime.datetime.now(),功能是获取电脑当前的时间。运行如下程序,可以将程序每次运行的时间,记录在文件time.txt中。运行10次,就有10行。( )

import datetime
with open("time.txt","w") as t:
    t.write(str(datetime.datetime.now()))
    t.write('\n')
A.正确 B.错误
公众号
客服 反馈
顶部