内容正文:
编写说明:安徽省普通高校对口招生专业理论和技能测试考试电子与信息大类《计算机编程基础—Python 语言考点双析卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第49、第50卷精准对标安徽省考纲,知识模块(五)文件与数据:
1. 文件操作
2. 数据库的使用
安徽省分类招生和对口招生考试 电子与信息大类
《计算机编程基础—Python 语言》考点双析卷 第50卷
文件(1) 老师讲解卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共10小题,每题3分,共30分)
1.下面操作能确保数据立即写入磁盘的是( )
A.调用write() B.设置buffering=0
C.调用flush() D.使用'a'模式
2.下面程序片断用于打开 D 盘上一个已经存在的数据文件 out.dat,要求既可以读出文件中的原有数据,也可以向文件中插入写入新数据,正确的模式为( )
A.a B.rb+ C.wb+ D.ab+
3.执行f.writelines(['a
', 'b'])后文件内容为( )
A.a
b B.a
b
C.ab D.a b
4.以下能获取当前工作目录的是( )
A.os.getcwd() B.os.chdir() C.os.listdir() D.os.path.abspath()
5.模块os 中,用于获取当前工作目录的函数是( )
A.os.getcwd() B.os.listdir() C.os.path.join() D.os.remove()
6.以下哪个模块可用于处理文件和目录操作( )
A.turtle B.os C.sys D.Math
7.文件对象的closed属性的作用是( )
A.关闭文件 B.判断文件是否已关闭
C.查看文件名 D.设置文件权限
8.以下哪个方法可以逐行读取文件所有内容并返回列表( )
A.read() B.readline() C.readlines() D.seek()
9.若文件内容为两行"Hello
Python",执行以下代码后输出是( )
with open("test.txt", "r") as f:
print(f.readline().strip())
A.Hello
Python B.HelloPython
C.Hello D.['Hello', 'Python']
10.以下代码运行后,文件test.txt的内容是( )
with open("test.txt", "w") as f:
f.write("Hello")
f.seek(0)
f.write("Hi")
A.HelloHi B.Hi C.Hiello D.Hillo
二、填空题(本大题共5小题,每题4分,共20分)
11.sqlite3数据库中将一个字段设置为自动增长使用属性__________。
12.以只读模式打开文件使用__________。
13.在文件打开模式后面加"+"表示__________。
14.以只写方式打开文件,若文件不存在则__________。
15.sqlite3数据库中将一个字段设置为非空使用属性__________。
三、程序设计题(本大题共5小题,每题10分,共50分)
16.程序设计:将a=['语文','数学','英语']中的元素采用写入x.csv文件中。
17.程序设计题:将文本根据标点符号重新切分短句居中显示输出,例如:txt="床前明月光,疑是地上霜。举头望明月,低头思故乡。"(注:预定的显示输出宽度为30,居中填充空格,输出样式如下图所示)
床前明月光
疑是地上霜
举头望明月
低头思故乡
18.将文件file.txt的每行内容前面加行号,行号与每行的内容之间以空格隔开(程序文件与文本文件在同一个目录层级)。
19.读取D盘下的文本文件file.txt,统计文件中的行数和总字符数(包括空格和换行符)。
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$
编写说明:安徽省普通高校对口招生专业理论和技能测试考试电子与信息大类《计算机编程基础—Python 语言考点双析卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要》编写。“考点双析卷”即围绕一个考点,一份是老师的讲解卷一份是学生的练习卷。助力师生构建 “讲练结合” 的学习闭环,适用于高考复习教学。
本专辑第49、第50卷精准对标安徽省考纲,知识模块(五)文件与数据:
1. 文件操作
2. 数据库的使用
安徽省分类招生和对口招生考试 电子与信息大类
《计算机编程基础—Python 语言》考点双析卷 第50卷
文件(1) 老师讲解卷
时间:45分钟 总分:100分
班级_______ 姓名_______ 学号_______ 成绩_______
一、单项选择题(本大题共10小题,每题3分,共30分)
1.下面操作能确保数据立即写入磁盘的是( )
A.调用write() B.设置buffering=0
C.调用flush() D.使用'a'模式
【答案】C
2.下面程序片断用于打开 D 盘上一个已经存在的数据文件 out.dat,要求既可以读出文件中的原有数据,也可以向文件中插入写入新数据,正确的模式为( )
A.a B.rb+ C.wb+ D.ab+
【答案】D
3.执行f.writelines(['a
', 'b'])后文件内容为( )
A.a
b B.a
b
C.ab D.a b
【答案】A
4.以下能获取当前工作目录的是( )
A.os.getcwd() B.os.chdir() C.os.listdir() D.os.path.abspath()
【答案】A
【详解】os.getcwd() 获取当前工作目录路径;os.chdir() 改变工作目录;os.listdir() 列目录内容;os.path.abspath() 转换路径为绝对路径,选 A 。
5.模块os 中,用于获取当前工作目录的函数是( )
A.os.getcwd() B.os.listdir() C.os.path.join() D.os.remove()
【答案】A
【详解】os.getcwd() 获取当前工作目录;os.listdir() 列出目录内容;os.path.join() 拼接路径;os.remove() 删除文件,选A。
6.以下哪个模块可用于处理文件和目录操作( )
A.turtle B.os C.sys D.Math
【答案】B
【详解】os模块提供文件、目录操作功能(创建、删除、遍历等 );turtle绘图,sys与解释器交互,math数学运算,故选 B。
7.文件对象的closed属性的作用是( )
A.关闭文件 B.判断文件是否已关闭
C.查看文件名 D.设置文件权限
【答案】B
【详解】f.closed返回布尔值,表示文件是否已关闭。
8.以下哪个方法可以逐行读取文件所有内容并返回列表( )
A.read() B.readline() C.readlines() D.seek()
【答案】C
【详解】readlines()会将文件的每一行作为列表元素返回,例如['line1
', 'line2
']。
9.若文件内容为两行"Hello
Python",执行以下代码后输出是( )
with open("test.txt", "r") as f:
print(f.readline().strip())
A.Hello
Python B.HelloPython
C.Hello D.['Hello', 'Python']
【答案】C
【详解】readline()读取第一行"Hello
",strip()去除换行符后输出"Hello"。
10.以下代码运行后,文件test.txt的内容是( )
with open("test.txt", "w") as f:
f.write("Hello")
f.seek(0)
f.write("Hi")
A.HelloHi B.Hi C.Hiello D.Hillo
【答案】B
【详解】'w'模式会覆盖原文件内容。f.seek(0) 将指针移到开头,f.write("Hi") 会覆盖前两个字符,但文件最终内容取决于写入操作的位置和长度,此处实际结果为 "Hi"(覆盖原有内容)。
二、填空题(本大题共5小题,每题4分,共20分)
11.sqlite3数据库中将一个字段设置为自动增长使用属性__________。
【答案】autoincrement
12.以只读模式打开文件使用__________。
【答案】r
13.在文件打开模式后面加"+"表示__________。
【答案】可读可写
14.以只写方式打开文件,若文件不存在则__________。
【答案】创建(意思接近即可)
15.sqlite3数据库中将一个字段设置为非空使用属性__________。
【答案】not null
三、程序设计题(本大题共5小题,每题10分,共50分)
16.程序设计:将a=['语文','数学','英语']中的元素采用写入x.csv文件中。
【答案】a=['语文','数学','英语']
f=open('x.csv','w')
f.write(','.join(a)+'
')
f.close()
17.程序设计题:将文本根据标点符号重新切分短句居中显示输出,例如:txt="床前明月光,疑是地上霜。举头望明月,低头思故乡。"(注:预定的显示输出宽度为30,居中填充空格,输出样式如下图所示)
床前明月光
疑是地上霜
举头望明月
低头思故乡
【答案】txt="床前明月光,疑是地上霜。举头望明月,低头思故乡。"
ntxt = txt.replace('。',',').split(',')
for i in ntxt:
if len(i)>0:
print("{:^30s}".format(i))
【详解】1.文本处理: 将文本中的句号。替换为逗号,,然后按逗号分割成短句。
2.循环遍历: 遍历分割后的短句列表。
3.条件判断: 检查短句是否非空。
4.格式化输出: 使用{:^30s}格式化字符串,将短句居中显示,宽度为30,填充空格。
18.将文件file.txt的每行内容前面加行号,行号与每行的内容之间以空格隔开(程序文件与文本文件在同一个目录层级)。
【答案】f=open("haha",'r+')
cont=f.readlines()
ncont=''
for i,j in enumerate(cont,start=1):
ncont+=str(i)+' '+j
f.seek(0)
f.write(ncont)
f.close()
19.读取D盘下的文本文件file.txt,统计文件中的行数和总字符数(包括空格和换行符)。
【答案】f=open('D:\\file.txt','r')
cont=f.readlines()
f.close()
print("行数:",len(cont))
s=0
for i in cont:
s+=len(i)
print("总字符数:",s)
20.将文件file.txt内容里面的字符"b"替换成"%"(程序文件与文本文件在同一个目录层级)。
【答案】f=open("haha",'r+')
cont=f.read()
f.seek(0)
f.write(cont.replace('b','%'))
f.close()
试卷第6页,共6页
试卷第5页,共6页
学科网(北京)股份有限公司
$