第99卷 课程综合卷 《计算机编程基础—Python语言》安徽省(对口招生)《电子与信息大类(计算机类)考纲百套卷》

2026-08-08
| 2份
| 15页
| 40人阅读
| 0人下载

内容正文:

编写说明:2027版安徽省普通高校对口招生考试电子与信息大类(计算机类)专业《考纲百套卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要(2025年版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷75份、专题训练卷17份、课程综合卷9份。 本试卷是第99卷,为课程综合卷,按《计算机编程基础—Python语言》课程综合范围和要求编写。具体内容为:Python 基础、数据与数据运算、结构化程序设计、面向对象程序设计基础、文件与数据。 安徽省对口招生考试 电子与信息大类(计算机类)《考纲百套卷》 第99卷 课程综合卷——计算机编程基础—Python语言 (考试时间:45分钟 满分:100分) 一、填空题(共10题,每题2分,共20分) 1.Python中生成器函数用__________关键字代替return,每次调用__________恢复执行。 2.装饰器本质是接收__________作为参数,返回__________的__________函数。 3.多态使不同类定义__________方法,调用者__________知道具体类型。方法重写用__________调用父类。 4.with语句的对象需实现__________和__________方法构成上下文管理器协议。 5.f-string中嵌入表达式语法__________,格式化小数位__________,对齐方式__________。 6.nonlocal修改__________函数的变量,global修改__________变量。闭包指__________。 7.集合运算: a|b__________, a&b__________, a-b__________。 8.Python中*和**在函数参数前作用: *args__________, **kwargs__________。 9.正则表达式\d匹配__________,re.findall返回__________,re.sub实现__________。 10.sys.argv获取__________,os.environ获取__________。Python脚本首行#!/usr/bin/env python3作用__________。 二、单项选择题(共15题,每题2分,共30分) 11.t=(1,2);t2=t*2;len(t2)(  ) A.2 B.4 C.报错 D.3 12.s="abc";print(s[::-1])(  ) A.abc B.cba C.cab D.报错 13.def gen():yield 1;yield 2;list(gen())(  ) A.[1] B.[1,2] C.生成器 D.(1,2) 14.d={"a":1};d.update({"b":2,"a":3});d(  ) A.{"a":1,"b":2} B.{"a":3,"b":2} C.报错 D.{"a":1} 15.def f():print(1);def f():print(2);f()(  ) A.1 B.2 C.报错 D.1 2 16.class A:x=5;class B(A):x=10;a=A();b=B();print(a.x,b.x)(  ) A.5 10 B.10 5 C.5 5 D.10 10 17.try:raise ValueError except Exception as e:print(type(e).__name__)(  ) A.ValueError B.Exception C.报错 D.TypeError 18.a=[1,2];b=[*a,3];print(b)(  ) A.[1,2,3] B.[1,2,[3]] C.报错 D.[3,1,2] 19.from functools import reduce reduce(lambda x,y:x+y,[1,2,3,4])(  ) A.10 B.[1,2,3,4] C.6 D.报错 20.with open("a.txt","w")as f: f.write("Hi ") print(open("a.txt").readline().strip())(  ) A.Hi B.H C.报错 D.空 21.s="1,2,3";list(map(int,s.split(",")))(  ) A.[1,2,3] B.["1","2","3"] C.报错 D.(1,2,3) 22.class A: @staticmethod def f():return 1 a=A();a.f()+A.f()(  ) A.2 B.1 C.报错 D.None 23.x=5 def f(): global x x=10 f();print(x)(  ) A.5 B.10 C.报错 D.None 24.import os;os.path.splitext("/a/b.txt")(  ) A.("/a/b",".txt") B."/a/b.txt" C."txt" D.报错 25.c=sqlite3.connect(":memory:").cursor(); c.execute("CREATE TABLE t(x)"); c.execute("INSERT INTO t VALUES(1),(2)"); c.execute("SELECT x FROM t WHERE x>1").fetchall()(  ) A.[(2,)] B.[2] C.[(1,),(2,)] D.报错 三、程序分析题(共3题,每题6分,共18分) 26.import re s = "ab12cd34ef56" pattern = r"\d+" result = re.______(pattern, s) print(______(result, key=len)) 27.def gen(): for i in range(3) yield i ** 2 g = gen() print(list(g)) 28.import functools nums = [1, 2, 3, 4, 5] result = functools.reduce(lambda a, b: a * b, nums) print(result) result2 = functools.reduce(lambda a, b: a + b, nums, 10) print(result2)   四、程序设计题(共3题,共20分,第29题6分、第30题6分、第31题8分) 29.输入字符串,使用正则表达式提取所有邮箱地址。样例:"联系a@x.com, b@y.cn"→['a@x.com','b@y.cn']   30.使用装饰器定义timer函数,输出被装饰函数的执行时间。测试计算sum(range(1000000))。   31.定义函数analyze_log(filename)统计日志中ERROR、WARN、INFO数量,返回字典。样例日志含多行格式"2026-08-03 ERROR ..."。(8分)   五、综合应用题(共1题,共12分) 32.设计任务管理系统:(1)Task类(title,priority,deadline:datetime);(2)TaskManager类实现add/list/by_priority/overdue;(3)JSON持久化保存/加载;(4)主程测试。   原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $ 编写说明:2027版安徽省普通高校对口招生考试电子与信息大类(计算机类)专业《考纲百套卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要(2025年版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷75份、专题训练卷17份、课程综合卷9份。 本试卷是第99卷,为课程综合卷,按《计算机编程基础—Python语言》课程综合范围和要求编写。具体内容为:Python 基础、数据与数据运算、结构化程序设计、面向对象程序设计基础、文件与数据。 安徽省对口招生考试 电子与信息大类(计算机类)《考纲百套卷》 第99卷 课程综合卷——计算机编程基础—Python语言 (考试时间:45分钟 满分:100分) 一、填空题(共10题,每题2分,共20分) 1.Python中生成器函数用__________关键字代替return,每次调用__________恢复执行。 【答案】yield、next() 【解析】yield暂停函数保留状态,next(gen)恢复从头执行到下一个yield。生成器是迭代器惰性求值。 2.装饰器本质是接收__________作为参数,返回__________的__________函数。 【答案】函数、新函数、高阶 【解析】@decorator等价于func=decorator(func)。装饰器在不修改原函数下增加功能(日志/计时/权限)。 3.多态使不同类定义__________方法,调用者__________知道具体类型。方法重写用__________调用父类。 【答案】同名、无需、super() 【解析】多态:shape.draw()对矩形/圆表现不同。同一接口不同实现。super()代理父类方法。 4.with语句的对象需实现__________和__________方法构成上下文管理器协议。 【答案】_enter_、_exit_ 【解析】_enter_返回资源对象,_exit_清理资源。实现这两方法即可用于with。也可用contextlib。 5.f-string中嵌入表达式语法__________,格式化小数位__________,对齐方式__________。 【答案】{expr}、{x:.2f}、{x:>10} 【解析】f"值{x}"嵌入表达式。:.2f保留两位小数。:>10右对齐10宽。:<左对齐, ^居中。 6.nonlocal修改__________函数的变量,global修改__________变量。闭包指__________。 【答案】外层、全局、内层函数记住外层作用域 【解析】nonlocal在嵌套函数中修改外层非全局变量。global修改全局变量。闭包=函数+环境变量。 7.集合运算: a|b__________, a&b__________, a-b__________。 【答案】并集、交集、差集 【解析】|合并去重。&公共元素。-在a不在b。^对称差仅在一方。这些运算返回新集合。 8.Python中*和**在函数参数前作用: *args__________, **kwargs__________。 【答案】打包为元组、打包为字典 【解析】*args收集多余位置参数为元组。**kwargs收集关键字参数为字典。调用时*可解包序列。 9.正则表达式\d匹配__________,re.findall返回__________,re.sub实现__________。 【答案】数字、列表、替换 【解析】import re。\d数字\w字母数字\s空白。findall返回匹配列表。sub(pat,repl,str)替换。 10.sys.argv获取__________,os.environ获取__________。Python脚本首行#!/usr/bin/env python3作用__________。 【答案】命令行参数、环境变量、指定解释器 【解析】sys.argv[0]脚本名,[1:]参数。os.environ字典访问环境变量。Shebang让脚本可直接./执行。 二、单项选择题(共15题,每题2分,共30分) 11.t=(1,2);t2=t*2;len(t2)(  ) A.2 B.4 C.报错 D.3 【答案】B 【解析】元组*重复,(1,2)*2=(1,2,1,2)。len=4。字符串和列表同样支持*重复。 12.s="abc";print(s[::-1])(  ) A.abc B.cba C.cab D.报错 【答案】B 【解析】[::-1]反转切片。步长-1从尾到头。等同于"".join(reversed(s))。 13.def gen():yield 1;yield 2;list(gen())(  ) A.[1] B.[1,2] C.生成器 D.(1,2) 【答案】B 【解析】gen()返回生成器对象,list()消费全部yield值→[1,2]。每次list(gen())创建新生成器。 14.d={"a":1};d.update({"b":2,"a":3});d(  ) A.{"a":1,"b":2} B.{"a":3,"b":2} C.报错 D.{"a":1} 【答案】B 【解析】update合并字典,同键覆盖。a:1→3,b新增。等同于d2|d1并集操作(3.9+)。 15.def f():print(1);def f():print(2);f()(  ) A.1 B.2 C.报错 D.1 2 【答案】B 【解析】函数可重定义,后定义覆盖前定义。f绑定新函数对象输出2。Python是动态语言。 16.class A:x=5;class B(A):x=10;a=A();b=B();print(a.x,b.x)(  ) A.5 10 B.10 5 C.5 5 D.10 10 【答案】A 【解析】类属性继承但可覆盖。A.x=5,B.x=10覆盖父类。实例访问到各自类的属性。 17.try:raise ValueError except Exception as e:print(type(e).__name__)(  ) A.ValueError B.Exception C.报错 D.TypeError 【答案】A 【解析】raise抛出异常被except Exception捕获。type输出实际类型名ValueError。Exception是所有异常的基类。 18.a=[1,2];b=[*a,3];print(b)(  ) A.[1,2,3] B.[1,2,[3]] C.报错 D.[3,1,2] 【答案】A 【解析】*解包运算符将a元素展开→[1,2,3]。与a+[3]等价。**解包字典。 19.from functools import reduce reduce(lambda x,y:x+y,[1,2,3,4])(  ) A.10 B.[1,2,3,4] C.6 D.报错 【答案】A 【解析】reduce累积计算:((((1)+2)+3)+4)=10。前两个→结果与下一个→最终值。lambda接收两参数。 20.with open("a.txt","w")as f: f.write("Hi ") print(open("a.txt").readline().strip())(  ) A.Hi B.H C.报错 D.空 【答案】A 【解析】写入"Hi ", 换行。readline读一行"Hi ",strip去换行→Hi。 21.s="1,2,3";list(map(int,s.split(",")))(  ) A.[1,2,3] B.["1","2","3"] C.报错 D.(1,2,3) 【答案】A 【解析】split按逗号分割→["1","2","3"]。map int转换→[1,2,3]。list收集结果。 22.class A: @staticmethod def f():return 1 a=A();a.f()+A.f()(  ) A.2 B.1 C.报错 D.None 【答案】A 【解析】staticmethod可实例或类名调用。a.f()→1,A.f()→1,合计2。类方法和静态方法均可类名调用。 23.x=5 def f(): global x x=10 f();print(x)(  ) A.5 B.10 C.报错 D.None 【答案】B 【解析】global声明x为全局变量,赋值10修改全局x。不加global则创建局部变量x=10全局不变。 24.import os;os.path.splitext("/a/b.txt")(  ) A.("/a/b",".txt") B."/a/b.txt" C."txt" D.报错 【答案】A 【解析】splitext分离路径和后缀返回元组。后缀含点。Path("b.txt").suffix→.txt(pathlib方式)。 25.c=sqlite3.connect(":memory:").cursor(); c.execute("CREATE TABLE t(x)"); c.execute("INSERT INTO t VALUES(1),(2)"); c.execute("SELECT x FROM t WHERE x>1").fetchall()(  ) A.[(2,)] B.[2] C.[(1,),(2,)] D.报错 【答案】A 【解析】内存数据库。插入两行。WHERE筛选x>1→一行(2,)。fetchall返回行列表每行元组。 三、程序分析题(共3题,每题6分,共18分) 26.import re s = "ab12cd34ef56" pattern = r"\d+" result = re.______(pattern, s) print(______(result, key=len)) 【答案】(1)findall(2分);(2)max(2分);(3)12(2分)。 【解析】re.findall(r"\d+",s)提取全部连续数字串,得到列表['12','34','56'];max(序列,key=len)以字符串长度作为比较依据,三个元素长度都是 2,最大值函数返回列表第一个元素12。 27.def gen(): for i in range(3) yield i ** 2 g = gen() print(list(g)) 【答案】(1)第3行 for i in range(3) 末尾缺少冒号,改为 for i in range(3):(6分)。 【解析】yield定义生成器函数。for循环句末必须有冒号。缺冒号引发SyntaxError。 28.import functools nums = [1, 2, 3, 4, 5] result = functools.reduce(lambda a, b: a * b, nums) print(result) result2 = functools.reduce(lambda a, b: a + b, nums, 10) print(result2) 【答案】120 25 【解析】reduce累积求1*2*3*4*5=120。reduce初始值10时,累加求10+1+2+3+4+5=25。 四、程序设计题(共3题,共20分,第29题6分、第30题6分、第31题8分) 29.输入字符串,使用正则表达式提取所有邮箱地址。样例:"联系a@x.com, b@y.cn"→['a@x.com','b@y.cn'] 【答案】import re s = input() pattern = r'\w+@\w+\.\w+' result = re.findall(pattern, s) print(result) 【解析】re.findall提取所有匹配(2分)。\w+@\w+\.\w+匹配邮箱格式(4分)。 30.使用装饰器定义timer函数,输出被装饰函数的执行时间。测试计算sum(range(1000000))。 【答案】import time def timer(func): def wrapper(*args, **kwargs): start = time.time() result = func(*args, **kwargs) end = time.time() print("耗时:"+str(round(end-start,4))+"秒") return result return wrapper @timer def test(): return sum(range(1000000)) print(test()) 【解析】装饰器接收函数返回wrapper(2分)。wrapper记录开始和结束时间(2分)。@timer语法糖应用装饰器(2分)。 31.定义函数analyze_log(filename)统计日志中ERROR、WARN、INFO数量,返回字典。样例日志含多行格式"2026-08-03 ERROR ..."。(8分) 【答案】def analyze_log(fn): counts = {"ERROR":0, "WARN":0, "INFO":0} with open(fn, "r", encoding="utf-8") as f: for line in f: for level in counts: if level in line: counts[level] += 1 break return counts result = analyze_log("app.log") for k, v in result.items(): print(k, v) 【解析】初始化计数字典(2分)。逐行读取检查关键词(3分)。累加计数(2分)。返回并输出结果(1分)。 五、综合应用题(共1题,共12分) 32.设计任务管理系统:(1)Task类(title,priority,deadline:datetime);(2)TaskManager类实现add/list/by_priority/overdue;(3)JSON持久化保存/加载;(4)主程测试。 【答案】import json from datetime import datetime class Task: def __init__(self, title, priority, deadline): self.title = title self.priority = priority self.deadline = deadline def to_dict(self): return {"title":self.title,"priority":self.priority,"deadline":self.deadline} @classmethod def from_dict(cls, d): return cls(d["title"], d["priority"], d["deadline"]) class TaskManager: def __init__(self): self.tasks = [] def add(self, task): self.tasks.append(task) def list_all(self): return self.tasks def by_priority(self): return sorted(self.tasks, key=lambda t: -t.priority) def overdue(self): now = datetime.now().strftime("%Y-%m-%d") return [t for t in self.tasks if t.deadline < now] def save(self, fn): with open(fn,"w",encoding="utf-8") as f: json.dump([t.to_dict() for t in self.tasks], f, indent=2, ensure_ascii=False) def load(self, fn): with open(fn,"r",encoding="utf-8") as f: self.tasks = [Task.from_dict(d) for d in json.load(f)] tm = TaskManager() tm.add(Task("学习Python", 3, "2026-08-15")) tm.add(Task("复习数据库", 5, "2026-08-01")) tm.add(Task("做项目", 4, "2026-08-10")) for t in tm.by_priority(): print(t.title, t.priority) 【解析】Task.to_dict/from_dict实现序列化(2分)。TaskManager增删查操作(3分)。sorted排序+filter过滤(3分)。JSON持久化(2分)。主程测试(2分)。 原创精品资源学科网独家享有版权,侵权必究! 学科网(北京)股份有限公司 学科网(北京)股份有限公司 学科网(北京)股份有限公司 $

资源预览图

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