2024年9月青少年软件编程Python等级考试(六级)真题试卷
题目总数:38 总分数:100
选择题
第 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 = modelself.bullet_count = 0def add_bullet(self,count):self.bullet_count += countdef shoot( ② ):if self.bullet_count <= 0:print('%s没有子弹' %(self.model))else:self.bullet_count ③ 1print('%s的子弹数量为%s' %( ④ ,self.bullet_count)) class Soldier():def __init__(self,name):self.name =nameself.gun = Nonedef 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)④ ()
来源:Python题库 6547.cn/paper/view/2je3uua5jy8heuuo