image

编辑人: 沉寂于曾经

calendar2025-06-16

message1

visits352

2023月05月Python六级理论参考答案

一、单选题

1、明明每天坚持背英语单词,他建立了英语单词错题本文件"mistakes.txt",将每天记错的单词增加到该文件中,下列打开文件的语句最合适的是?( )

A、f = open("mistakes.txt")

B、f = open("mistakes.txt","r")

C、f = open("mistakes.txt","a")

D、f = open("mistakes.txt","w")


2、小张近阶段要学习的英文单词存储在"data.txt"文件,格式如图所示。undefined

处理"data.txt"文件中英文单词的Python程序段如下:

file = open(“data.txt”)

for word in file:

if word[0:1] == “c”:

continue

else:

print(word)

file.close()

A、输出包含"c"(区分大小写)的单词

B、输出以"c"开头(区分大小写)的单词

C、输出以"c"开头(不区分大小写)的单词

D、输出不是以"c"开头(区分大小写)的单词


3、文件"score.csv"中存放了3位同学的成绩数据,小李编写程序读取数据内容,文件内容和程序成功读取界面如图所示。undefined

import csv

csv_reader = csv.reader(open(______))

for row in csv_reader:

print(______)

上述程序中划线处应填入?( )

A、score row

B、score.csv "row"

C、"score" "row"

D、"score.csv" row


4、有如下程序代码:

import csv # ①

headers = [‘学号’,‘姓名’,‘分数’]

rows = [[‘202001’,‘张三’,‘98’],

[‘202002’,‘李四’,‘95’],

[‘202003’,‘王五’,‘92’]]

with open(‘score.csv’,‘w’,encoding=‘utf8’,newline='') as f : # ②

writer = csv.writer(f) # ③

writer.writerow(headers)

writer.writerows(rows) # ④

关于上述语句的解释,不正确的是?( )

A、①处功能为导入csv 库

B、②处以写方式打开文件

C、③处创建 csv.writer 实例

D、④处一次只能写入一行


5、

关于matplotlib模块中函数的功能,下列描述正确的是?( )

A、bar()函数用于绘制折线图

B、plot()函数用于绘制水平柱形图

C、barh()函数用于绘制垂直柱形图

D、scatter()函数用于绘制散点图


6、

绘制sin(x)的图形如图所示,画线处的语句是?( )

undefined

import matplotlib.pyplot as plt

import numpy as np x = np.linspace(0, 10, 30) ___________ plt.show()

A、plt.bar(x)

B、plt.scatter(x)

C、plt.plot(x, np.sin(x))

D、plt.scatter(x, np.sin(x))


7、下列关于类和对象的说法,正确的是?( )

A、通过def关键字定义类

B、通过class创建实例

C、每个对象的数据相同

D、每个对象拥有相同的方法


8、有如下程序段:

class Student:

count = 0

def init(self, name):

self.name = name

Student.count += 1

def study(self):

print(f’{self.name}在学习’)

student1 = Student(“小明”)

student2 = Student(“小红”)

student2.study()

执行代码后,下列说法不正确的是?( )

A、程序创建了2个实例

B、Student.count的值为0

C、study为该类的方法

D、输出的结果为“小红在学习”


9、有下列语句命令:

import sqlite3

conn = sqlite3.connect(“test.db”) # ①

cursor = conn.cursor() # ②

cursor.close() # ③

conn.close() # ④

下列关于语句功能解释,正确的是?( )

A、①创建和连接数据库

B、②提交事务

C、③关闭数据库连接

D、④关闭游标


10、commit()函数是提交数据库操作的命令函数,下列不需要执行该函数的数据库操作的是?( )

A、查询操作

B、增加操作

C、修改操作

D、删除操作


11、执行数据库操作的部分代码如下:

import sqlite3

db = sqlite3.connect(“test.db”)

cur=db.cursor()

cur.execute(“create table Student(Sname char(20),Sage SMALLINT);”)

db.close()

下列描述正确的是?( )

A、当前操作的数据库的名称为Student

B、create table语句的功能是数据库查询

C、数据表中将会插入2条新记录

D、当前表中有2个字段


12、小萌要用tkinter制作一个单击按钮,输出"Hello World!"的打招呼程序,语句如下:

import tkinter as tk

window = tk.Tk()

window.title(“Python GUI”) #

window.geometry(“600x100”)

window.mainloop()

程序中处语句的功能是?( )

A、创建窗口对象

B、设置窗口标题

C、设置窗口大小

D、使用窗口对象


13、小李设计一个显示加、减、乘、除的单选框界面,代码如下:

import tkinter

from tkinter import *

root = Tk()

v = IntVar()

calcs = [ (‘+’, 1), (‘-’, 2), (“*”, 3), (“/”, 4),]

for calc, num in calcs:

设置单选框,用来显示运算符

Radiobutton(text = calc,variable =v,value=num).grid(row=num-1, column=1)

root.mainloop()

运行后的界面是?( )

A

B

C

D


14、有如下Python程序段:

n=4

a=[[i*n+j+1 for j in range(n)]for i in range(n)]

for i in range(n//2):

for j in range(1,n,2):

a[i][j],a[n-i-1][n-j-1]=a[n-i-1][n-j-1],a[i][j]

则程序执行后,a[1][1]和a[2][0]的值分别是?( )

A、6和9

B、8和9

C、11和9

D、11和8


15、下列关于数据可视化的说法,最准确的是?( )

A、数据可视化是指静态数据的可视化

B、决定数据可视化的表现形式的是数据结构

C、可视化探究具有关联性数据的分布关系可用散点图

D、可视化展现时间趋势类的数据可用雷达图


16、文件exam.txt与以下代码在同一目录下,其内容是一段文本: bigBen, 下列代码的输出结果是?( )
f = open(“exam.txt”)
print(f)
f.close()

A、exam.txt

B、exam

C、<_ io.TextlOWrapper ..>

D、bigBen


17、有如下python程序:

import numpy as np

from matplotlib import pyplot as plt
x=np.arange(-5,5,0.1)
y=np.sin(x)

plt.show()

运行后没有报错但看不到运行结果,原因不可能是?( )

A、缺少plt.plot()语句

B、缺少plt.scatter()语句

C、未正确安装第三方库

D、电脑卡顿


18、下列不属于对象构成成份的是?( )

A、标识

B、属性

C、方法(或操作

D、规则


19、假设"数据.txt"中的内容为:木耳+银耳+牛肉+鸡蛋+香菇,运行下列程序,内容修改为:木耳*银耳*牛肉*鸡蛋*香菇。 代码中空白部分应该填写什么?( )

f = open(“数据.txt”,“r”)

s= f.read() .split(“+”)

f =open(“数据. txt”, “w”)

f.write(______)

f.close( )

A、"*".join(s)

B、s.split(*)

C、s

D、s.join(*)


20、用Python语句创建sQLite数据库,代码如下:
import sqlite3
conn= sqlite3.connec(“test2.db”)
c=conn.cursor()
c.execute(“CREATE TABLE STUDENTS(ID INT,AGE INT,NAME TEXT)”)
c.execute(“INSERT INTO STUDENTS(ID, AGE,NAME) VALUES(2,16,‘LISA’)”)
c.execute(“UPDATE STUDENTS set AGE=18 where it,ID=2”)
conn.commit()
c.close()

conn.close()

程序运行后,AGE列的值是?( )

A、2

B、16

C、LISA

D、18


21、利用tkinter模块设计一个求"圆面积"的界面,程序中自定义了若干个功能函数和按钮,要求点击"退出"按钮能关闭界面窗口,点击"重置"按钮能重置输入框中的数据,部分程序代码如下:
def cancel():
var_r.set('')
def tc_quit():
win.quit()
win.destroy()
以下哪个选项可以在"退出"按钮中正确调用功能函数?( )

A、btn_Cancel=tk.Button(win,text='重置',command=tc_quit)

B、btn_quit=tk.Button(win,text='退出',command=cancel)

C、btn_quit=tk.Button(win,text='退出',command=tc_quit)

D、tc_quit=tk.Button(win,text='退出')


22、下列选项中能创建文本框的是?( )

A、tkinter.Text()

B、tkinter.Tk()

C、tkinter.Button()

D、tkinter.Label()


23、有如下程序段:
class xcal:
def init(self,numx,numy):
self.numx=numx
self.numy=numy
def xadd(self,another):
numx=self.numx*another.numx
numy=self.numy*another.numy
return xcal(numx,numy)
def print(self):
print(str(self.numx)+“/”+str(self.numy))
x=xcal(2,3)
y=x.xadd(xcal(4,5))
y.print()

程序运行后,输出的结果是?( )

A、6/20

B、15/8

C、10/12

D、8/15


24、

Python程序如下: from random import random a=[0]*7 flag=[False]*10 i=1 while i<=6: a[i]=int(random()*5)*2+1 if flag[a[i]]==False or a[i]>a[i-1]: flag[a[i]]=True i=i+1 该程序段运行后,列表a的值可能为?( )

A、[0, 7, 5, 9, 7, 1, 7]

B、[0, 1, 3, 5, 7, 9, 1]

C、[0, 9, 2, 3, 5, 7, 5]

D、[0, 9, 5, 9, 7, 9, 1]


25、在中国,具有中国国籍且年满18周岁的人拥有选举权利,学校想要统计出截止到2022年12月31日年满18周岁的学生名单。
学生的相关信息存储在"stu_info.txt"文件中,存储格式如下:
高一 1|谢乐|340421200606155914
高一 1|岑新奇|330282200407301529

用python编写代码如下:
f=open(“stu_info.txt”,“r”,encoding=“utf8”)
namelist=[ ] #存放年满18周岁的学生名单
for line in f.readlines():
stu=line.split(“|”)
birth=++++
if birth<=“20041231”:
namelist.append(++++)

print(namelist)

①②两处的代码应填为?( )

A、① stu[2][6:14] ② stu[1]

B、① stu[2][6:13] ② stu[1]

C、① stu[3][6:14] ② stu[2]

D、① stu[2][-12:-1] ② stu[1]


二、判断题

26、用readlines()函数读取文本文件内容,返回的是一个列表,其中每一行的数据为一个元素。( )

A 正确

B 错误


27、JSON的loads和load方法的区别是,loads操作的是字符串,load操作的是文件流。( )

A 正确

B 错误


28、numpy.linspace(1,10,10)用于产生从1到9的一维数组。( )

A 正确

B 错误


29、类(class)由类名、属性和方法三个部分构成。( )

A 正确

B 错误


30、使用tkinter设计窗体时,Text控件的属性包含bg、font、bd和command。( )

A 正确

B 错误


31、如果在子类中实现了一个公有方法,该方法也能调用继承的父类中的私有方法和私有属性。( )

A 正确

B 错误


32、如果没有采用close()关闭文件,Python程序退出时文件将不会自动关闭。( )

A 正确

B 错误


33、CSV文件一般以英文逗号分隔元素。( )

A 正确

B 错误


34、以下程序可以提取 5 到 10 之间的所有元素。( )import numpy as np a = np. arange(15) print(a[(a<=10) & (a>=5)])

A 正确

B 错误


35、使用Python语言对SQLite数据库进行操作,实现打开和关闭名为test.db数据库文件。有下列语句命令:①conn = sqlite3.connect("test.db")②cur = conn.cursor( )③import sqlite3 ④conn.close( ) ⑤cur.close( ) 要实现上述功能,上述语句执行的先后顺序正确是③①②⑤④。( )

A 正确

B 错误


三、编程题

36、打开一个由小写英文组成的文本文件’old.txt’,将该文件中的每一个字母加密后写入到一个新文件’new.txt’,加密的方法是:a变成b,b变成c……,z变成a,其它字符不变化(不考虑文件路径)

file=open(“old.txt”,“r”)
line=file. ++++++++++++++++

list=[]
while line:
for i in range(++++++++++++ ):
if line[i].islower():
jm=++++++++++++++++
list.append(chr(jm))
else:
list.append(line[i])
line=file.readline()
s=''.join(list)
file=open(“new.txt”,“w+”)
++++++++++++++++
file.close()

参考答案:

参考程序: file=open(“old.txt”,“r”) line=file.readline() list=[] while line: for i in range(len(line) ): if line[i].islower(): jm=(ord(line[i])-97+1)%26+97 list.append(chr(jm)) else: list.append(line[i]) line=file.readline() s=''.join(list) file=open(“new.txt”,“w+”) file.write(s) file.close()


37、使用Python的sqlite3库完成以下操作:

1.创建一个名为cpu的数据库文件,并创建一张Rate的表(表有三个字段:ID、Rate、updatetime)

2.记录下十秒钟cpu相关数据,并删除第id为1的数据。

import sqlite3

import datetime
import psutil #获取cpu当前占比
conn = sqlite3.connect("++++++++ ")
creatsql = “create table Rate(ID integer primary key, Rate float,updatetime time)”
++++++++
cur.execute(creatsql)
conn.commit()
insertsql = “insert into Rate(ID,Rate,updatetime) values(%d,%f,‘%s’)”
checksql = “select * from Rate”
for x in range(0,10):
nowtime = datetime.datetime.now()
nowtime = nowtime.strftime(‘%Y-%m-%d %H:%M:%S’)
cpu_per = float(psutil.cpu_percent(1))
cur.++++++++ (insertsql % (x,cpu_per,nowtime))
conn.commit()
cur.execute(checksql)
data = cur.fetchall()
delsql=“delete from Rate where ID=%d”
cur.execute(delsql %1)
conn.commit()
++++++++
conn.close()

参考答案:

参考程序:

import sqlite3 import datetime import psutil conn = sqlite3.connect(“cpu.db”) creatsql = “create table Rate(ID integer primary key, Rate float,updatetime time)” cur = conn.cursor() cur.execute(creatsql) conn.commit() insertsql = “insert into Rate(ID,Rate,updatetime) values(%d,%f,‘%s’)” checksql = “select * from Rate” for x in range(0,10): nowtime = datetime.datetime.now() nowtime = nowtime.strftime(‘%Y-%m-%d %H:%M:%S’) cpu_per = float(psutil.cpu_percent(1)) cur.execute(insertsql % (x,cpu_per,nowtime)) conn.commit() cur.execute(checksql) data = cur.fetchall() delsql=“delete from Rate where ID=%d” cur.execute(delsql %1) conn.commit() cur.close() conn.close()


38、创建一个学生类,存储学生的姓名、语文成绩、英语成绩和数学成绩,根据成绩计算相应的等级,成绩≥90为’A’,成绩∈[80,90]为’B’,成绩∈[60,80]为’C’,成绩≤60为’D’。创建一个班级类,该类有班级名称和学生2个属性,显示班级所有学生的姓名及相应的等级。程序运行效果如下图所示。undefined

程序代码如下:
class stu:
def init(self,name,chinese,english,math):
self.name=name
self.c= chinese
self.e= english
++++
lis=[self.c,self.e,self.m]
self.lis=lis
def level(self):
for i in range(3):
if ++++ :
self.lis[i]=‘A’
elif self.lis[i]>80:
self.lis[i]=‘B’
elif self.lis[i]>60:
self.lis[i]=‘C’
else:
self.lis[i]=‘D’
return self.lis
def show(self):
print(f’姓名:{self.name},等级:{++++ }’)
class lesson:
def init(self, name, students=[]):
self.students = students
self.class_name = name
def show_student(self):
for stu in self.students:
++++
students = [ stu(‘jack’,90,80,90),
stu(‘candy’,95,88,69),
stu(‘cindy’,66,76,39),
stu(‘frank’,61,87,44),
stu(‘tony’,20,65,49)]
class1 = lesson(“高一(1)班”,students)
++++
请在划线处填入正确的代码。

参考答案:

参考程序:

class stu: def init(self,name,chinese,english,math): # 定义类,类名为Student self.name=name # 姓名属性 self.c= chinese # 语文成绩属性 self.e= english # 英语成绩属性 self.m = math # 数学成绩属性 lis=[self.c,self.e,self.m] # 成绩存入列表 self.lis=lis def level(self): for i in range(3): if self.lis[i] >=90: # 等级判断 self.lis[i]=‘A’ elif self.lis[i]>80: self.lis[i]=‘B’ elif self.lis[i]>60: self.lis[i]=‘C’ else: self.lis[i]=‘D’ return self.lis def show(self): # 定义show方法,用于显示信息 print(f’姓名:{self.name},等级:{self.level()}’)

class lesson: # 定义 lesson类 def init(self, name, students=[]): # 定义2个属性 self.students = students # 定义学生属性 self.class_name = name # 定义姓名属性 def show_student(self): # 定义show_student方法,用于显示学生列表 for stu in self.students: # 遍历学生列表 stu.show() # 显示学生信息 students = [ stu(‘jack’,90,80,90), stu(‘candy’,95,88,69), stu(‘cindy’,66,76,39), stu(‘frank’,61,87,44), stu(‘tony’,20,65,49)] class1 = lesson(“高一(1)班”,students) class1.show_student()


喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!

创作类型:
原创

本文链接:2023月05月Python六级理论参考答案

版权声明:本站点所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明文章出处。
分享文章
share