内容正文:
编写说明:安徽省普通高校对口招生专业理论和技能测试考试电子与信息大类《计算机编程基础—Python 语言考点双析卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第49、第50卷精准对标安徽省考纲,知识模块(五)文件与数据:
1. 文件操作
2. 数据库的使用
安徽省分类招生和对口招生考试 电子与信息大类
《计算机编程基础—Python 语言》考点双析卷 第49卷
文件(1) 老师讲解卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共10小题,每题3分,共30分)
1.执行open('data.bin', 'rb').read(10)返回的数据类型是( )
A.字符串 B.列表 C.字节流 D.整数
【答案】C
2.下面操作会导致数据丢失的是( )
A.'w'模式打开已存在文件并立即关闭
B.'a'模式写入后不调用flush()
C.'r+'模式下覆盖部分内容
D.写入二进制文件后未调用close()
【答案】A
3.关于Python文件模式'r+'和'w+'的区别,说法正确的是( )
A.'r+'会清空原文件内容,'w+'不会
B.两者都允许读写,且初始指针位置相同
C.'r+'要求文件必须存在,'w+'会新建文件
D.'w+'只能用于二进制文件
【答案】C
4.若文件内容为"ABC",打开模式为'r+'则执行f.seek(1); f.write('X')后内容变为( )
A.AXC B.XBC C.ABCX D.AX
【答案】A
5.关于truncate()方法,正确的是( )
A.必须指定size参数 B.会移动文件指针
C.可用于扩展文件大小 D.默认截断到当前位置
【答案】D
6.下面文件对象中用于标准输入的是( )
A.stdin B.stdinput C.stdout D.sterr
【答案】A
7.检测文件是否关闭的属性是( )
A.f.fileno() B.f.closed C.f.isatty() D.f.seekable()
【答案】B
8.已知 D 盘根目录下有文本文件“data.txt”,若程序需要先从“news.txt”文件中读出数据,修改后再写入“data.txt”文件中,则最合适的打开文件形式是( )
A.fp = open('d:\
ews.txt') B.fp.open('d:
ews.txt', 'r+')
C.fp = open('d:\
ews.txt', 'r+') D.fp = open('d:
ews.txt', 'a')
【答案】C
9.下面函数中用于文件定位的函数是( )
A.open B.seek C.write D.read
【答案】B
10.下面能正确读取CSV文件(每行逗号分隔)的是( )
A.f.read().split(',') B.f.readlines(',')
C.[line.strip().split(',') for line in f] D.list(f.split(','))
【答案】C
二、填空题(本大题共5小题,每题4分,共20分)
11.文件的关闭使用___________方法。
【答案】close( )
【详解】close()方法用于关闭文件。
12.sqlite3数据库中更新数据库表数据的操作,要使用__________语句。
【答案】update
13.文件对象f,使用__________方法可以查看打开的文件名。
【答案】name
14.Python自带了一个称为__________的数据库编程接口规范。
【答案】DB-API
15.连接sqlite3数据库使用函数__________。
【答案】connect( )
三、程序设计题(本大题共5小题,每题10分,共50分)
16.连接数据库“test.db”,创建数据表“stu_score”,此表中有两个字段,分别为id、score其中id为文本字符串,score为浮点数。首先向“stu_score”数据表中插入一条数据('202501',80.5),将插入的数据提交至数据库后发现插入的数据('202501',80.5)有误。最后修改为('202501',90.5)。(注:编写的程序文件与题中涉及的相关文件,都在同一层级的文件夹中)
【答案】import sqlite3
conn=sqlite3.connect("test.db")
cur=conn.cursor()
cur.execute("create table stu_score(id text,score float)")
cur.execute("insert into stu_score values('202501',80.5)")
conn.commit()
cur.execute("update stu_score set score=90.5 where id='202501'")
conn.commit()
conn.close()
17.读取“hello. txt”文件中的全部内容,并打印输出。(注:文件目录为“D:\test\hello.txt”)
【答案】with open('D:\\test\\hello.txt','r') as f:
print(f.read())
18.连接数据库“test.db”,创建数据表“stu_score”,此表中有两个字段,分别为id、score,id为文本字符串,score为浮点数。首先向“学生成绩”数据表中插入两条数据('202501',80.5)、('202502',90.5),然后将“stu_score”数据表中的数据全部打印输出。(注:编写的程序文件与题中涉及的相关文件,都在同一层级的文件夹中)
【答案】import sqlite3
conn=sqlite3.connect("test.db")
cur=conn.cursor()
cur.execute("create table stu_score(id text,score float)")
info=[('202501',80.5),('202502',90.5)]
cur.executemany("insert into stu_score values(?,?)",info)
conn.commit()
cur.execute("select * from stu_score")
print(cur.fetchall())
conn.close()
19.连接数据库“test.db”,创建数据表“student”,此表中有两个字段,分别为id、name。id为整数,name为文本字符串,并且id为主键。(注:编写的程序文件与题中涉及的相关文件,都在同一层级的文件夹中)
【答案】import sqlite3
# 连接数据库
conn=sqlite3.connect('test.db')
# 创建游标
cu=conn.cursor()
# 创建数据表
cu.execute('create table guo(id integer primary key,name text)')
# 提交更改
conn.commit()
# 断开连接
conn.close()
20.编程实现下列功能,连接数据库文件“test.db”,在数据库文件“test.db”中创建“学生信息”数据表,此表有三列,列名、数据类型对应如下:(学号,字符串),(姓名,字符串),(成绩,浮点数)。然后在“学生信息”数据表中依次添加多条数据记录,添加的多条数据记录依次为“D2025100 张三 740.2”“D2025101李四 650.3”“D2025102王二 660.9”和“D2025103王五520.7”由于信息有误,现将学号为“D2025100”的成绩更正为710.2。(注:编写的程序文件与题中涉及的相关文件都处在同一层级的文件夹中)
【答案】import sqlite3
sq=sqlite3.connect("test.db")
cu=sq.cursor()
cu.execute("create table 学生信息(学号 text,姓名 text,成绩 real)")
datas=[('D2025100','张三',740.2),('D2025101','李四',650.3),
('D2025102','王二',660.9),('D2025103','王五',520.7)]
cu.executemany("insert into 学生信息 values(?,?,?)",datas)
cu.execute("update 学生信息 set 成绩=710.2 where 学号='D2025100'")
sq.commit()
cu.close()
sq.close()
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$
编写说明:安徽省普通高校对口招生专业理论和技能测试考试电子与信息大类《计算机编程基础—Python 语言考点双析卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第49、第50卷精准对标安徽省考纲,知识模块(五)文件与数据:
1. 文件操作
2. 数据库的使用
安徽省分类招生和对口招生考试 电子与信息大类
《计算机编程基础—Python 语言》考点双析卷 第49卷
文件(1) 老师讲解卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共10小题,每题3分,共30分)
1.执行open('data.bin', 'rb').read(10)返回的数据类型是( )
A.字符串 B.列表 C.字节流 D.整数
2.下面操作会导致数据丢失的是( )
A.'w'模式打开已存在文件并立即关闭
B.'a'模式写入后不调用flush()
C.'r+'模式下覆盖部分内容
D.写入二进制文件后未调用close()
3.关于Python文件模式'r+'和'w+'的区别,说法正确的是( )
A.'r+'会清空原文件内容,'w+'不会
B.两者都允许读写,且初始指针位置相同
C.'r+'要求文件必须存在,'w+'会新建文件
D.'w+'只能用于二进制文件
4.若文件内容为"ABC",打开模式为'r+'则执行f.seek(1); f.write('X')后内容变为( )
A.AXC B.XBC C.ABCX D.AX
5.关于truncate()方法,正确的是( )
A.必须指定size参数 B.会移动文件指针
C.可用于扩展文件大小 D.默认截断到当前位置
6.下面文件对象中用于标准输入的是( )
A.stdin B.stdinput C.stdout D.sterr
7.检测文件是否关闭的属性是( )
A.f.fileno() B.f.closed C.f.isatty() D.f.seekable()
8.已知 D 盘根目录下有文本文件“data.txt”,若程序需要先从“news.txt”文件中读出数据,修改后再写入“data.txt”文件中,则最合适的打开文件形式是( )
A.fp = open('d:\
ews.txt') B.fp.open('d:
ews.txt', 'r+')
C.fp = open('d:\
ews.txt', 'r+') D.fp = open('d:
ews.txt', 'a')
9.下面函数中用于文件定位的函数是( )
A.open B.seek C.write D.read
10.下面能正确读取CSV文件(每行逗号分隔)的是( )
A.f.read().split(',') B.f.readlines(',')
C.[line.strip().split(',') for line in f] D.list(f.split(','))
二、填空题(本大题共5小题,每题4分,共20分)
11.文件的关闭使用___________方法。
12.sqlite3数据库中更新数据库表数据的操作,要使用__________语句。
13.文件对象f,使用__________方法可以查看打开的文件名。
14.Python自带了一个称为__________的数据库编程接口规范。
15.连接sqlite3数据库使用函数__________。
三、程序设计题(本大题共5小题,每题10分,共50分)
16.连接数据库“test.db”,创建数据表“stu_score”,此表中有两个字段,分别为id、score其中id为文本字符串,score为浮点数。首先向“stu_score”数据表中插入一条数据('202501',80.5),将插入的数据提交至数据库后发现插入的数据('202501',80.5)有误。最后修改为('202501',90.5)。(注:编写的程序文件与题中涉及的相关文件,都在同一层级的文件夹中)
17.读取“hello. txt”文件中的全部内容,并打印输出。(注:文件目录为“D:\test\hello.txt”)
18.连接数据库“test.db”,创建数据表“stu_score”,此表中有两个字段,分别为id、score,id为文本字符串,score为浮点数。首先向“学生成绩”数据表中插入两条数据('202501',80.5)、('202502',90.5),然后将“stu_score”数据表中的数据全部打印输出。(注:编写的程序文件与题中涉及的相关文件,都在同一层级的文件夹中)
19.连接数据库“test.db”,创建数据表“student”,此表中有两个字段,分别为id、name。id为整数,name为文本字符串,并且id为主键。(注:编写的程序文件与题中涉及的相关文件,都在同一层级的文件夹中)
20.编程实现下列功能,连接数据库文件“test.db”,在数据库文件“test.db”中创建“学生信息”数据表,此表有三列,列名、数据类型对应如下:(学号,字符串),(姓名,字符串),(成绩,浮点数)。然后在“学生信息”数据表中依次添加多条数据记录,添加的多条数据记录依次为“D2025100 张三 740.2”“D2025101李四 650.3”“D2025102王二 660.9”和“D2025103王五520.7”由于信息有误,现将学号为“D2025100”的成绩更正为710.2。(注:编写的程序文件与题中涉及的相关文件都处在同一层级的文件夹中)
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$