第73卷 文件操作 《计算机编程基础—Python语言》安徽省(对口招生)《电子与信息大类(计算机类)考纲百套卷》

2026-08-08
| 2份
| 12页
| 34人阅读
| 0人下载

内容正文:

编写说明:2027版安徽省普通高校对口招生考试电子与信息大类(计算机类)专业《考纲百套卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要(2025年版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷75份、专题训练卷17份、课程综合卷7份。 本试卷是第73卷,为知识训练卷,按《计算机编程基础—Python语言》中“文件操作”范围和要求编写。具体内容为:1.文件的打开和关闭(B)。2.文件的读写(C)。3.数据的格式化(D)。 安徽省对口招生考试 电子与信息大类(计算机类)《考纲百套卷》 第73卷 计算机编程基础—Python语言——文件操作 (考试时间:45分钟 满分:100分) 一、填空题(共10题,每题2分,共20分) 1.Python中打开文件使用__________函数,关闭文件使用__________方法。 2.文件打开模式__________表示只读,__________表示只写(覆盖),__________表示追加。 3.读取文件全部内容用__________,读取一行用__________。 4.使用__________语句打开文件可自动关闭,无需显式调用close()。 5.文件写入字符串应使用__________方法。 6.读取文件所有行到列表用__________;遍历文件每一行可写for line in__________。 7.open()返回的文件对象本身是一个__________器,可逐行迭代。 8.file.seek(0)将文件指针移到__________;file.tell()返回__________。 9.编码参数指定文件文本编码,Python3默认编码为__________。 10.写入列表数据到文件时每个元素需手动添加__________符,write方法不会自动添加。 二、单项选择题(共15题,每题2分,共30分) 11.open("a.txt","r")中"r"表示(  ) A.只读 B.读写 C.只写 D.追加 12.读取文件内容正确写法(  ) A.f=open("a.txt");t=f.read() B.t=read("a.txt") C.t=file("a.txt") D.t=open.read("a.txt") 13.with open("a.txt") as f:的作用(  ) A.异常处理 B.自动关闭文件 C.创建文件夹 D.只读打开 14.追加模式打开文件用(  ) A.r B.r+ C.w D.a 15.f.write("Hello")返回值(  ) A.写入字符数 B.None C."Hello" D.True 16.for line in f:遍历后文件指针位置(  ) A.开头 B.末尾 C.中间 D.报错 17.大文件读取最节省内存方式(  ) A.read() B.readlines() C.for line in f D.read().split() 18.open("a.txt","r")文件不存在时(  ) A.自动创建 B.报FileNotFoundError C.返回空 D.静默跳过 19.f.readlines()返回类型(  ) A.字符串 B.列表 C.元组 D.字典 20.f.write("中") 用GBK编码写,文件大小约(  ) A.1字节 B.2字节 C.3字节 D.取决于系统 21.关闭文件使用(  ) A.f.close() B.f.end() C.f.exit() D.f.stop() 22.写入后立即读取同一文件(  ) A.自动读取 B.需seek(0) C.报错 D.返回空 23.检查文件是否存在的正确方式(  ) A.f=open();检查 B.os.path.exists() C.try open D.file.check() 24."rb"模式打开文件读取返回(  ) A.字符串 B.字节(bytes) C.整数 D.无区别 25.f1=open("a.txt");f2=open("a.txt");f1和f2是(  ) A.同一对象 B.不同对象 C.共享数据 D.报错 三、程序分析题(共3题,每题6分,共18分) 26.with______("data.txt",______,encoding="utf-8") as f: content=f.read() print(content) 读取文件全部内容打印,请在横线处填入适当内容。 27.f=open("log.txt","w") f.write("第一行") f.write("第二行") f.close() 程序想写入两行数据但有2处错误,请找出并改正。 28.with open("test.txt","w",encoding="utf-8") as f: f.write("A B C ") with open("test.txt","r",encoding="utf-8") as f: lines=f.readlines() print(len(lines)) print(lines[1].strip()) f.seek(0) print(f.read(1)) 四、程序设计题(3题,29/30各6分/31各8分) 29.编写程序:读取文件data.txt中所有整数(每行一个,用 分隔),计算总和与平均值(保留一位小数)。样例文件:1 2 3 4 5→总和15 平均3.0   30.编写程序:将1到100中所有7的倍数写入文件seven.txt,每行一个数,文件末尾输出总个数。   31.统计文本文件word.txt中:总行数、总字符数(不含换行)、出现"Python"的次数。文件不存在则提示"文件不存在"。   五、综合应用题(共1题,每题12分,共12分) 32.编写成绩处理程序:读取scores.txt(每行"姓名 成绩"),筛选出不及格(<60)和优秀(>=90)学生,分别写入fail.txt和excellent.txt,并输出统计信息。样例文件:张三 85 李四 55 王五 92→不及格1人 优秀1人   原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 编写说明:2027版安徽省普通高校对口招生考试电子与信息大类(计算机类)专业《考纲百套卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要(2025年版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷75份、专题训练卷17份、课程综合卷9份。 本试卷是第73卷,为知识训练卷,按《计算机编程基础—Python语言》中“文件操作”范围和要求编写。具体内容为:1.文件的打开和关闭(B)。2.文件的读写(C)。3.数据的格式化(D)。 安徽省对口招生考试 电子与信息大类(计算机类)《考纲百套卷》 第73卷 计算机编程基础—Python语言——文件操作 (考试时间:45分钟 满分:100分) 一、填空题(共10题,每题2分,共20分) 1.Python中打开文件使用__________函数,关闭文件使用__________方法。 【答案】open()、close() 【解析】open()打开文件返回文件对象,close()关闭文件释放系统资源。推荐使用with语句自动管理文件的打开和关闭。 2.文件打开模式__________表示只读,__________表示只写(覆盖),__________表示追加。 【答案】r、w、a 【解析】文件打开模式:r只读(默认),w写入覆盖已有内容,a追加到末尾,r+读写。w模式文件不存在则创建,存在则清空。 3.读取文件全部内容用__________,读取一行用__________。 【答案】read()、readline() 【解析】read()读取全部内容返回一个字符串。readline()读取一行含换行符。readlines()读取所有行返回字符串列表。大文件推荐逐行迭代。 4.使用__________语句打开文件可自动关闭,无需显式调用close()。 【答案】with 【解析】with open()语句自动调用__________exit__________关闭文件,即使代码块中出现异常也能保证文件资源正确释放,比手动close更可靠。 5.文件写入字符串应使用__________方法。 【答案】write() 【解析】write()写入字符串返回成功写入的字符数。writelines()写入字符串序列不自动添加换行符,需每个元素末尾手动加换行。 6.读取文件所有行到列表用__________;遍历文件每一行可写for line in__________。 【答案】readlines()、f 【解析】文件对象调用readlines()会一次性读取全部行,以字符串列表形式返回;文件对象本身可迭代,直接使用for line in f就能循环遍历每一行文本。 7.open()返回的文件对象本身是一个__________器,可逐行迭代。 【答案】迭代 【解析】open 函数产生的文件对象属于迭代器,支持 for 循环逐行读取,大文件读取时相比一次性读取全部内容更节省内存。 8.file.seek(0)将文件指针移到__________;file.tell()返回__________。 【答案】开头、当前位置 【解析】seek(0)把文件指针偏移至文件起始位置;tell()函数用于获取文件指针当前所在的字节偏移位置。 9.编码参数指定文件文本编码,Python3默认编码为__________。 【答案】UTF-8 【解析】Python3 打开文本文件时,默认字符编码为 UTF-8,打开 GBK 编码的中文文件需要手动设置 encoding="gbk" 防止乱码。 10.写入列表数据到文件时每个元素需手动添加__________符,write方法不会自动添加。 【答案】换行 【解析】write()方法只会原样写入字符串,不会自动追加换行符,列表分行写入文件时需要手动拼接 换行符实现分行存储。 二、单项选择题(共15题,每题2分,共30分) 11.open("a.txt","r")中"r"表示(  ) A.只读 B.读写 C.只写 D.追加 【答案】A 【解析】r只读(默认)。w写入覆盖,r+读写,w+写读,a追加,a+追加读。文件不存在时w/a创建,r报错。 12.读取文件内容正确写法(  ) A.f=open("a.txt");t=f.read() B.t=read("a.txt") C.t=file("a.txt") D.t=open.read("a.txt") 【答案】A 【解析】先open再read。read()不带参数读全部,read(n)读n个字符。大文件read可能内存溢出。 13.with open("a.txt") as f:的作用(  ) A.异常处理 B.自动关闭文件 C.创建文件夹 D.只读打开 【答案】B 【解析】with自动管理资源,退出代码块时自动close()。即使异常也确保关闭。优于手动try-finally。 14.追加模式打开文件用(  ) A.r B.r+ C.w D.a 【答案】D 【解析】a模式指针在末尾,写入内容追加到文件尾。a+追加并支持读。w会先清空文件内容。 15.f.write("Hello")返回值(  ) A.写入字符数 B.None C."Hello" D.True 【答案】A 【解析】write返回写入的字符数。5返回5。此返回值可校验写入是否完整。 16.for line in f:遍历后文件指针位置(  ) A.开头 B.末尾 C.中间 D.报错 【答案】B 【解析】遍历消费完所有行后指针在文件末尾。再次遍历需f.seek(0)重置指针到开头。 17.大文件读取最节省内存方式(  ) A.read() B.readlines() C.for line in f D.read().split() 【答案】C 【解析】逐行迭代for line in f内存中只保留一行。read()读全部可能OOM。readlines同样全读。 18.open("a.txt","r")文件不存在时(  ) A.自动创建 B.报FileNotFoundError C.返回空 D.静默跳过 【答案】B 【解析】r模式文件必须存在否则FileNotFoundError。w和a文件不存在会自动创建。 19.f.readlines()返回类型(  ) A.字符串 B.列表 C.元组 D.字典 【答案】B 【解析】readlines返回行列表每行含换行符。大文件慎用全部加载到内存。 20.f.write("中") 用GBK编码写,文件大小约(  ) A.1字节 B.2字节 C.3字节 D.取决于系统 【答案】B 【解析】GBK编码中文占2字节。UTF-8中文3字节。编码决定文件大小。建议统一使用UTF-8。 21.关闭文件使用(  ) A.f.close() B.f.end() C.f.exit() D.f.stop() 【答案】A 【解析】close()关闭文件释放系统资源。未关闭可能导致数据未写入或文件锁。with自动调用close。 22.写入后立即读取同一文件(  ) A.自动读取 B.需seek(0) C.报错 D.返回空 【答案】B 【解析】写入后指针在末尾直接read返回空。需f.seek(0)回到开头再读。或f.flush()+seek。 23.检查文件是否存在的正确方式(  ) A.f=open();检查 B.os.path.exists() C.try open D.file.check() 【答案】B 【解析】os.path.exists(path)返回bool。也可用pathlib.Path(path).exists()。避免用异常处理正常逻辑。 24."rb"模式打开文件读取返回(  ) A.字符串 B.字节(bytes) C.整数 D.无区别 【答案】B 【解析】二进制模式返回bytes而非str。需decode转字符串。图片/音频等非文本文件必须二进制读取。 25.f1=open("a.txt");f2=open("a.txt");f1和f2是(  ) A.同一对象 B.不同对象 C.共享数据 D.报错 【答案】B 【解析】每次open返回独立文件对象,各自有独立指针。f1的读写不影响f2的指针位置。 三、程序分析题(共3题,每题6分,共18分) 26.with______("data.txt",______,encoding="utf-8") as f: content=f.read() print(content) 读取文件全部内容打印,请在横线处填入适当内容。 【答案】(1)open(3分);(2)"r"(3分)。 【解析】with open文件,模式r读取。encoding="utf-8"确保中文正确解码。f.read()读全部内容后打印。with块结束自动close。 27.f=open("log.txt","w") f.write("第一行") f.write("第二行") f.close() 程序想写入两行数据但有2处错误,请找出并改正。 【答案】(1)write不会自动加换行,应改为f.write("第一行 ")(3分);(2)推荐使用with语句自动管理资源,改为with open(...) as f:(3分)。 【解析】writelines也不自动加换行。需手动每行加 或用" ".join(lines)一次写入。with更安全确保close。 28.with open("test.txt","w",encoding="utf-8") as f: f.write("A B C ") with open("test.txt","r",encoding="utf-8") as f: lines=f.readlines() print(len(lines)) print(lines[1].strip()) f.seek(0) print(f.read(1)) 【答案】3 B A 【解析】写入3行(含换行)。readlines返回3行列表。lines[1]="B "去strip得B。seek(0)回开头read(1)读首字符A。需留意文件实际存在路径下。 四、程序设计题(3题,29/30各6分/31各8分) 29.编写程序:读取文件data.txt中所有整数(每行一个,用 分隔),计算总和与平均值(保留一位小数)。样例文件:1 2 3 4 5→总和15 平均3.0 【答案】total=0;count=0 with open("data.txt","r") as f: for line in f: total+=int(line.strip()) count+=1 avg=round(total/count,1) if count else 0 print("总和"+str(total)+" 平均"+str(avg)) 【解析】逐行读取for line in f。strip去换行。int转整数累加。count计数行数。除以0保护。逐行处理大文件不占内存。 30.编写程序:将1到100中所有7的倍数写入文件seven.txt,每行一个数,文件末尾输出总个数。 【答案】with open("seven.txt","w") as f: count=0 for i in range(1,101): if i%7==0: f.write(str(i)+" ") count+=1 print("写入"+str(count)+"个数") 【解析】循环1~100,i%7==0判断7的倍数。每行写入str(i)+" "手动加换行。计数变量统计写入个数。 31.统计文本文件word.txt中:总行数、总字符数(不含换行)、出现"Python"的次数。文件不存在则提示"文件不存在"。 【答案】import os if not os.path.exists("word.txt"): print("文件不存在") else: lines=chars=py_count=0 with open("word.txt","r",encoding="utf-8") as f: for line in f: lines+=1 stripped=line.rstrip(" ") chars+=len(stripped) py_count+=stripped.count("Python") print("行数"+str(lines)+" 字符"+str(chars)+" Python"+str(py_count)) 【解析】os.path.exists检查存在。rstrip去掉行尾换行不计数。count统计子串出现次数。逐行累加三项统计。 五、综合应用题(共1题,每题12分,共12分) 32.编写成绩处理程序:读取scores.txt(每行"姓名 成绩"),筛选出不及格(<60)和优秀(>=90)学生,分别写入fail.txt和excellent.txt,并输出统计信息。样例文件:张三 85 李四 55 王五 92→不及格1人 优秀1人 【答案】import os if not os.path.exists('scores.txt'): print('文件不存在');exit() fail_count=excellent_count=total=0 with open('scores.txt','r',encoding='utf-8') as f,\ open('fail.txt','w',encoding='utf-8') as f_fail,\ open('excellent.txt','w',encoding='utf-8') as f_exc: for line in f: name,score=line.strip().split() score=int(score);total+=1 if score<60: f_fail.write(name+' '+str(score)+' ') fail_count+=1 elif score>=90: f_exc.write(name+' '+str(score)+' ') excellent_count+=1 print('总人数'+str(total)+' 不及格'+str(fail_count)+' 优秀'+str(excellent_count)) 【解析】with可同时打开多文件。split分离姓名和成绩。int转数值。if-elif分类写入对应文件。三文件同时管理效率高。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

第73卷 文件操作 《计算机编程基础—Python语言》安徽省(对口招生)《电子与信息大类(计算机类)考纲百套卷》
1
第73卷 文件操作 《计算机编程基础—Python语言》安徽省(对口招生)《电子与信息大类(计算机类)考纲百套卷》
2
所属专辑
由于学科网是一个信息分享及获取的平台,不确保部分用户上传资料的 来源及知识产权归属。如您发现相关资料侵犯您的合法权益,请联系学科网,我们核实后将及时进行处理。