试卷 2024年9月青少年软件编程Python等级考试(六级)真题试卷
2024年9月青少年软件编程Python等级考试(六级)真题试卷
选择题
第 1 题    单选题

下面Python代码运行后出现的图像是?( )

import matplotlib.pyplot as plt
import numpy as np
x = np.array(['A', 'B', 'C', 'D'])
y = np.array([30, 25, 15, 35])
plt.bar(x, y)
plt.show()
A.

B.

C.

D.

第 2 题    单选题

下面Python代码的输出结果正确的是?( )

import numpy as np
dt = np.dtype('i1')
print(dt)
A.

int64

B.

int32

C.

int16

D.

int8

第 3 题    单选题

下面Python代码的输出结果正确的是?( )

import numpy as np 
a = np.array([1, 2, 3], dtype = float)  
print (a)
A.

[1.+0.j 2.+0.j 3.+0.j]

B.

[1. 2. 3.]

C.

[1, 2, 3]

D.

[ True  True  True]

第 4 题    单选题

下面Python代码的输出结果正确的是?( )

import numpy as np
student = np.dtype([('name','S20'), ('age', 'i2'),('height', 'f4')]) 
a = np.array([('Alice', 20, 55),('Jone', 21, 48)], dtype = student) 
print(a)


A.

[(b'Alice', 20., 55.) (b'Jone', 21., 48.)]

B.

[(b'Alice', 20., 55) (b'Jone', 21., 48)]

C.

[(b'Alice', 20, 55.) (b'Jone', 21, 48.)]

D.

{(b'Alice', 20, 55.), (b'Jone', 21, 48.)}

第 5 题    单选题

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

A.

SQLite创建表时,必须指定主关键字PRIMARY KEY

B.

连接数据库conn=sqlite3.connect('d:/test.db') ,执行SQL语句都必须用conn.execute开头

C.

语句conn.commit()表示保存数据到数据库

D.

SQLite是Python的内置库,可以直接用import sqlite3导入

第 6 题    单选题

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

A.

同一个数据库文件中,不能创建名称相同的表

B.

SQLlite Expert是常用的查看数据库的软件

C.

Python可以连接已存在的数据库

D.

向数据库的表中插入数据时,所有字段都必须输入完整(不允许留空)

第 7 题    单选题

关于导入SQLite,正确的导入语句是?( )

A.

import SQLite3

B.

import sqlite3

C.

import sqlite

D.

import SQLite

第 8 题    单选题

关于SQLite连接数据库语句,正确的是?( )

A.

conn=sqlite.connect('d:/test.db')

B.

conn=sqlite.connect('d:\test.db')

C.

conn=sqlite3.connect('d:/test.db')

D.

conn=sqlite3.connect('d:\test.db')

第 9 题    单选题

有一个文件记录了 1000个学生的高考总分,每一行信息长度是 20 个字节,要想只读取最后 10 行的内容,不能直接用到的函数是?( )

A.

seek()

B.

readline()

C.

open()

D.

read()

第 10 题    单选题

以下选项中不是 Python 对文件的写操作方法的是?( )

A.

writelines

B.

writeline

C.

writetext

D.

write

第 11 题    单选题

以下Python语句的执行结果是?( )

with open('A.txt','w+') as f:
    f.write('hello')
    print(f.read())
A.

输出一个'hello'字符串

B.

写到文件A.txt里一个'hello'字符串

C.

写到文件A.txt里一个'hello'字符串并输出一个'hello'字符串

D.

打印'hello'

第 12 题    单选题

如下选项中,对文件的描述错误的是?( )

A.

文件中能够包含任何数据内容

B.

文本文件和二进制文件都是文件

C.

文本文件不能用二进制文件方式读入

D.

文件是一个存储在辅助存储器上的数据序列

第 13 题    单选题

以下关于JSON格式的数据遵循的语法规则,错误的是?( )

A.

数据存储在键值对中

B.

数据的字段由分号分隔

C.

一个花括号保存一个JSON对象

D.

一个方括号保存一个数组

第 14 题    单选题

有一个名为scores.txt的文件,里面存储了一些学生的姓名和成绩,如下所示:

Alice 90
Bob 80
Charlie 85
David 75
Eve 95

你想用Python读取这个文件,并将每一行的数据格式化为一个元组,例如('Alice','90'),请补全下面的Python代码?( )

with open('scores.txt', 'r') as f:
    for line in f:
        # 将每一行的数据格式化为一个元组
        score = tuple(_______)
        print(score)
A.

line.split()

B.

line.strip()

C.

line.split(',')

D.

line.strip(',')

第 15 题    单选题

从一个json文件中读取一些数据,并将其转换为Python的字典对象。可以使用json模块中的load方法来实现这个功能。请问,下面哪个选项是正确的代码,可以从data.json文件中读取数据,并赋值给变量data?( )

A.

data = json.load(open('data.json'))

B.

data = json.loads('data.json')

C.

data = open('data.json').load(json)

D.

data = open('data.json').loads(json)

第 16 题    单选题

有如下Python程序段:

a=[[0]*3 for i in range(4)]
for i in range(len(a)):
    for j in range(3):
        a[i][j]=i*len(a[j])+1
print(a[2][2])

执行程序后输出的值是?( )

A.

1

B.

0

C.

7

D.

2

第 17 题    单选题

以下关于Python中类的说法错误的是?( )

A.

Python使用class关键字来声明一个类,且类名一般首字母大写

B.

类的成员函数中必须有self参数,且self参数永远是第一个参数

C.

__init__()方法在类实例化时不会自动调用

D.

定义类之后,需要定义具体的对象才可以访问对象的成员方法或属性

第 18 题    单选题

Python中的类有几个主要组成部分?( )

A.

变量和方法

B.

属性和方法

C.

方法和构造函数

D.

属性和构造函数

第 19 题    单选题

以下Python代码中,哪个选项可以正确地创建一个类和其实例?( )

A.
class MyClass():
      pass
my_instance = MyClass('ok')
B.
class MyClass():
      def __init__(self):
            print('hello')
my_instance = MyClass()
C.
class MyClass():
      x = 10
my_instance = MyClass(x)
D.
def MyClass():
    print("This is a method")
my_instance = MyClass()
第 20 题    单选题

如下Python程序:

class Cars():
    def __init__(self,color,shape):
        self.color = color 
        self.shape = shape 
        print('您定制的{}{}已经生产好了!'.format(self.color,self.shape))
new_car = Cars('红色','小汽车')

执行程序后,打印的结果是?( )

A.

小汽车

B.

红色

C.

您定制的已经生产好了!

D.

您定制的红色小汽车已经生产好了!

第 21 题    单选题

运行以下Python代码:

import tkinter as tk  
def click():  
    print("Button clicked!")  
root = tk.Tk()  
button = tk.Button(root, text="Click me!", command=click)  
button.pack()  
root.mainloop()

当用户点击按钮时,程序将输出?( 

A.

"Button clicked!"

B.

"Click me!"

C.

没有任何输出

D.

程序将崩溃

第 22 题    单选题

阅读以下Python代码:

import tkinter as tk  
root = tk.Tk()  
listbox = tk.Listbox(root)  
listbox.insert(tk.END, "Apple")  
listbox.insert(tk.END, "Banana")  
listbox.pack()  
root.mainloop()

程序运行后,列表框中将显示哪些项?( )

A.

仅"Apple"

B.

仅"Banana"

C.

"Apple"和"Banana"

D.

什么也不显示

第 23 题    单选题

下列Python代码创建了一个按钮,当按钮被点击时,会发生什么?( )

import tkinter as tk  
def on_button_click():  
    print("Button clicked!")  
root = tk.Tk()  
button = tk.Button(root, text="Click me!", command=on_button_click)  
button.pack()  
root.mainloop()
A.

弹出对话框显示"Button clicked!"

B.

在控制台输出"Button clicked!"

C.

窗口标题变为"Button clicked!"

D.

按钮文本变为"Clicked!"

第 24 题    单选题

运行以下Python代码:

import tkinter as tk  
def change_text():  
    label.config(text="Changed text")  
root = tk.Tk()  
label = tk.Label(root, text="Original text")  
label.pack()  
button = tk.Button(root, text="Change text", command=change_text)  
button.pack()  
root.mainloop()

当点击“Change text”按钮后,标签的文本会变成?( )

A.

保持不变

B.

"Changed text"

C.

"Button clicked!"

D.

"Original text"

第 25 题    单选题

考虑一个名为arr的NumPy数组,其形状是(3, 2)。如果将这个数组转换为形状(2, 3),返回一个新数组,以下哪个函数调用是正确的?( )

A.

arr.reshape(2, 3)

B.

arr.resize(3, 2)

C.

arr.resize(2, 3)

D.

arr.flatten()

判断题
第 26 题    判断题

下面Python代码输出结果是:

1              

2

3

import numpy as np 
a = np.array([1,2,3])  
b = a.reshape(3,1)  
print (b)
A.
正确
B.
错误
第 27 题    判断题

NumPy库中的np.sum( )函数可以用来计算数组中所有元素的平均值。( )

A.
正确
B.
错误
第 28 题    判断题

SQLite中使用的SQL语句必须全部使用大写字母。( )

A.
正确
B.
错误
第 29 题    判断题

fi=open("t.txt","r+") 执行后只能对"t.txt"文件进行读操作。( )

A.
正确
B.
错误
第 30 题    判断题

以只读模式打开文件时,文件指针指向文件开始处。( )

A.
正确
B.
错误
第 31 题    判断题

在类定义的外部没有任何办法可以访问对象的私有成员。( )

A.
正确
B.
错误
第 32 题    判断题

可以使用np.reshape()函数来改变图像的形状,从而实现旋转、缩放等操作。( )

A.
正确
B.
错误
第 33 题    判断题

在Python中,要将一个字典对象保存为json格式的文件,可以使用json.dump()函数。( )

A.
正确
B.
错误
第 34 题    判断题

在Python中,封装是将对象的属性和方法绑定在一起,并通过访问器(getter)和修改器(setter)来控制对对象的访问和修改。( )

A.
正确
B.
错误
第 35 题    判断题

阅读以下Python代码:

import tkinter as tk  
root = tk.Tk()  
root.geometry("200x100")  
root.title("My Window")  
root.mainloop()

执行上述代码后,程序将创建一个尺寸为200x100、标题为“My Window”的窗口。( )

A.
正确
B.
错误
编程题
第 36 题    问答题

成绩统计

(1)在D盘根目录下建立一个空数据库Cjdata.db,按照如图所示的表结构,创建学生基本情况表cj;

(2)为表cj添加数据,内容是”学号—— 20210919、班级——4、姓名——赵雨乐、性别——女、成绩——98“;

(3)查询并输出表cj中成绩低于100的数据。

请根据要求,补全Python代码。

import sqlite3
conn =        ①        
cursor = conn.cursor()
cursor.execute('''CREATE TABLE cj               
                  (        ②        ,
                   班级 INTEGER,
                   姓名  TEXT(10) NOT NULL,
                   性别  TEXT(1)   NOT NULL,
                   成绩  REAL);''')
cursor.execute("        ③        ('20210919',4,'赵雨乐','女',98)") 
conn.commit()
cursor.execute("        ④        ")    
for i in        ⑤        :           
    print(i)
conn.close()
第 37 题    问答题

士兵瑞恩

按照需求填空:

1)士兵瑞恩有一把AK47

2)士兵有枪就可以开火

3)枪能够把子弹发射出去,每射击一次,子弹减少一个

4)枪能够装填子弹 --增加子弹的数量

class Gun():
   def         ①        (self,model):
       self.model = model
       self.bullet_count = 0
   def add_bullet(self,count):
       self.bullet_count += count
   def shoot(        ②        ):
       if self.bullet_count <= 0:
           print('%s没有子弹' %(self.model))
       else:
           self.bullet_count         ③         1
           print('%s的子弹数量为%s' %(        ④        ,self.bullet_count))
class Soldier():
   def __init__(self,name):
       self.name =name
       self.gun = None
   def fire(self):
       if self.gun == None:
           print('%s没有枪' %(self.name))
       else:
           self.gun.add_bullet(5)
                  ⑤        
ak47 = Gun('AK47')
ak47.add_bullet(10)
ak47.shoot()
ruien = Soldier('RE')
ruien.gun = ak47
ruien.fire()
第 38 题    问答题

家庭记录

假设有一个任务是帮助你的家庭记录每日的支出。每天结束时,你会记录下今天的日期、购买的物品以及花费的金额。这个信息将被保存在一个名为ledger.txt的文本文件中。编写一段Python代码来完成以下的操作: 

1)在文件末尾追加新的消费记录;

2)需要查看当前所有的消费记录。 

为了简化问题,假设每条记录只包含日期、物品和金额,使用逗号分隔。

def append_record(date, item, amount):
    with open("ledger.txt", "        ①        ") as file:
        file.write(f"{date},{item},{amount}\n")
def read_records():
    with open("        ②        ", "r") as file:
        records = file.        ③        ()
        for record in records:
            print(record, end="")
# 示例操作
append_record("2023-04-05", "Groceries", 35.20)
append_record("2023-04-06", "Internet Bill", 50)
        ④        ()
答题卡
选择题
判断题
编程题
36 37 38
题目总数:38
总分数:100
时间:120分钟