内容正文:
编写说明:2027版安徽省普通高校对口招生考试电子与信息大类(计算机类)专业《考纲百套卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要(2025年版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷75份、专题训练卷17份、课程综合卷7份。
本试卷是第70卷,为知识训练卷,按《计算机编程基础—Python语言》中“面向对象程序设计的基本概念”范围和要求编写。具体内容为:1.面向对象程序设计的基本特征(B)。2.对象与类(B)。3.类的三大特性:继承、封装、多态(C)。4.事件、方法、属性(C)。
安徽省对口招生考试
电子与信息大类(计算机类)《考纲百套卷》
第70卷 计算机编程基础—Python语言——面向对象程序设计的基本概念
(考试时间:45分钟 满分:100分)
一、填空题(共10题,每题2分,共20分)
1.Python中用__________关键字定义类。
2.类中定义的函数称为__________。
3.通过类创建的具体对象称为__________。
4.在类的方法中,__________参数代表当前实例对象本身。
5.创建实例时自动调用的特殊方法名是__________。
6.面向对象的三大基本特征是封装、__________和多态。
7.子类继承父类时,类定义中类名后需加__________指定父类。
8.通过对象名.属性名访问属性,这个点(.)称为__________运算符。
9.在类定义中,属性名前加__________表示私有属性(约定)。
10.dir(obj)函数可查看对象的__________列表。
二、单项选择题(共15题,每题2分,共30分)
11.class关键字后跟( )
A.类名和冒号
B.对象名
C.属性列表
D.方法名
12.class Dog: def __init__(self):中self是( )
A.关键字
B.类名
C.实例对象
D.函数名
13.stu=Student(); type(stu)返回( )
A.<class Student>
B.Student
C.<class type>
D.object
14.class A:pass;class B(A):pass中B被称为( )
A.父类
B.子类
C.基类
D.超类
15.__init__方法在_______调用( )
A.手动
B.创建实例时
C.访问属性时
D.删除对象时
16.class Dog:def __init__(self,name):self.name=name;d=Dog("旺财");d.name值( )
A.旺财
B.name
C.Dog
D.self
17.class A: x=5; a=A(); a.x=10; A.x的值( )
A.5
B.10
C.报错
D.None
18.class Dog(Animal):def bark(self):中Animal是( )
A.实例
B.父类
C.属性
D.模块
19.__str__方法的作用是( )
A.初始化
B.print(obj)或str(obj)时调用
C.删除对象
D.比较对象
20.class C: def m(self,x):中self在调用时( )
A.手动传
B.自动传入
C.可省略
D.报错
21.class A: def m(self):print("A");class B(A):pass;b=B();b.m()输出( )
A.A
B.B
C.报错
D.无
22.__private这种命名是( )
A.语法强制私有
B.约定私有不强制
C.控制访问
D.Python关键字
23.isinstance(obj,str)检查( )
A.obj类型
B.obj值
C.obj长度
D.obj地址
24.class A:pass; a=A(); print(type(a).__name__)输出( )
A.A
B.a
C.type
D.class
25.面向对象相比面向过程主要优点是( )
A.速度更快
B.代码复用和易维护
C.无需变量
D.只能一个文件
三、程序分析题(共3题,每题6分,共18分)
26.class Student:
def ______(self,name,age):
self.name=name
self.age=age
def show(self):
______"姓名"+self.name+"年龄"+str(self.age)
s=Student("张三",18)
s.show()
27.class Dog
def __init__(self)
self.name="旺财"
def bark self:
print("汪")
d=Dog()
d.bark()
28.class Counter:
count=0
def __init__(self):
self.value=0
def add(self):
self.value+=1
Counter.count+=1
c1=Counter()
c2=Counter()
c1.add()
c2.add()
c2.add()
print(c1.value,c2.value,Counter.count)
四、程序设计题(3题,29/30各6分/31各8分)
29.定义类Rectangle,有属性width和height,方法area()返回面积。输入宽高创建对象输出面积。样例:5 3→面积15
30.定义类Circle,属性radius,方法perimeter()返回周长和area()返回面积(保留一位小数)。样例:5→周长31.4 面积78.5
31.定义父类Animal(name属性和speak方法输出"叫"),子类Dog和Cat继承并重写speak分别输出"汪汪"和"喵喵"。输入名字和类型创建对象。样例:旺财 Dog→汪汪
五、综合应用题(共1题,每题12分,共12分)
32.设计银行账户类Account:属性name和balance;方法deposit/withdraw(余额不足提示)/show_info;创建对象演示存取。样例:创建张三1000→存500→取200→余额1300
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$
编写说明:2027版安徽省普通高校对口招生考试电子与信息大类(计算机类)专业《考纲百套卷》,依据《安徽省普通高校对口招生专业理论和技能测试考试纲要(2025年版)》编写。本专辑涵盖三个部分,第一部分为知识训练卷,第二部分为专题训练卷,第三部分为课程综合卷。本专辑共99份试卷,其中知识训练卷75份、专题训练卷17份、课程综合卷9份。
本试卷是第70卷,为知识训练卷,按《计算机编程基础—Python语言》中“面向对象程序设计的基本概念”范围和要求编写。具体内容为:1.面向对象程序设计的基本特征(B)。2.对象与类(B)。3.类的三大特性:继承、封装、多态(C)。4.事件、方法、属性(C)。
安徽省对口招生考试
电子与信息大类(计算机类)《考纲百套卷》
第70卷 计算机编程基础—Python语言——面向对象程序设计的基本概念
(考试时间:45分钟 满分:100分)
一、填空题(共10题,每题2分,共20分)
1.Python中用__________关键字定义类。
【答案】class
【解析】class关键字定义类,类名通常采用驼峰命名法如MyClass。类是对现实事物的抽象模板,封装数据属性和行为方法。
2.类中定义的函数称为__________。
【答案】方法
【解析】类中定义的函数称为方法,第一个参数必须是self指向调用该方法的实例。通过self访问实例属性和其他方法。
3.通过类创建的具体对象称为__________。
【答案】实例
【解析】通过类名加括号创建实例:obj=ClassName()。每次实例化创建一个独立的具有自身属性值的对象,内存地址各不相同。
4.在类的方法中,__________参数代表当前实例对象本身。
【答案】self
【解析】类的实例方法第一个形参固定为 self,指代调用该方法的当前实例对象,用来操作实例自身属性与方法。
5.创建实例时自动调用的特殊方法名是__________。
【答案】__init__
【解析】__init__为构造方法,实例创建完成后自动执行,用于初始化实例属性。
6.面向对象的三大基本特征是封装、__________和多态。
【答案】继承
【解析】面向对象三大核心特性:封装、继承、多态。继承实现父类代码复用,多态实现方法动态调用。
7.子类继承父类时,类定义中类名后需加__________指定父类。
【答案】括号
【解析】子类定义语法class 子类名(父类名):,通过类名后的括号填写父类名称完成继承声明。
8.通过对象名.属性名访问属性,这个点(.)称为__________运算符。
【答案】成员
【解析】.是成员访问运算符,用来访问实例 / 类的属性、成员方法。
9.在类定义中,属性名前加__________表示私有属性(约定)。
【答案】双下划线(__)
【解析】属性名称以双下划线开头时,Python 会自动进行名称改写,模拟私有属性,限制外部直接访问。
10.dir(obj)函数可查看对象的__________列表。
【答案】属性和方法
【解析】dir()函数返回对象所有可用属性、方法名称的列表,快速查看对象可调用成员。
二、单项选择题(共15题,每题2分,共30分)
11.class关键字后跟( )
A.类名和冒号
B.对象名
C.属性列表
D.方法名
【答案】A
【解析】class ClassName:是标准格式。类名建议大驼峰。
12.class Dog: def __init__(self):中self是( )
A.关键字
B.类名
C.实例对象
D.函数名
【答案】C
【解析】self代表当前实例。调用dog.bark()时Python自动传入self=dog。
13.stu=Student(); type(stu)返回( )
A.<class Student>
B.Student
C.<class type>
D.object
【答案】A
【解析】type返回对象的类型即创建它的类。isinstance也可检查继承关系。
14.class A:pass;class B(A):pass中B被称为( )
A.父类
B.子类
C.基类
D.超类
【答案】B
【解析】B(A)中B是子类(派生类),A是父类(基类/超类)。子类继承父类。
15.__init__方法在_______调用( )
A.手动
B.创建实例时
C.访问属性时
D.删除对象时
【答案】B
【解析】obj=Class()时Python自动调用__init__(self)。构造方法初始化实例。
16.class Dog:def __init__(self,name):self.name=name;d=Dog("旺财");d.name值( )
A.旺财
B.name
C.Dog
D.self
【答案】A
【解析】传入"旺财"赋给self.name。d.name访问返回"旺财"。
17.class A: x=5; a=A(); a.x=10; A.x的值( )
A.5
B.10
C.报错
D.None
【答案】A
【解析】a.x=10创建了实例属性x=10,不影响类属性A.x=5。类属性和实例属性各自独立。
18.class Dog(Animal):def bark(self):中Animal是( )
A.实例
B.父类
C.属性
D.模块
【答案】B
【解析】括号中指定父类,子类继承其方法和属性。Python支持多重继承class D(A,B)。
19.__str__方法的作用是( )
A.初始化
B.print(obj)或str(obj)时调用
C.删除对象
D.比较对象
【答案】B
【解析】__str__定义对象的字符串表示。print(对象)自动调用__str__。__repr__用于调试输出。
20.class C: def m(self,x):中self在调用时( )
A.手动传
B.自动传入
C.可省略
D.报错
【答案】B
【解析】obj.m(val)中Python自动传入obj作为self。定义时需写self,调用时无需显式传。
21.class A: def m(self):print("A");class B(A):pass;b=B();b.m()输出( )
A.A
B.B
C.报错
D.无
【答案】A
【解析】B继承A,未重写m方法,调用时执行父类A的m。继承实现代码复用。
22.__private这种命名是( )
A.语法强制私有
B.约定私有不强制
C.控制访问
D.Python关键字
【答案】B
【解析】双下划线前缀的__name会被改写为_ClassName__name,防止意外被子类覆盖。非强制。
23.isinstance(obj,str)检查( )
A.obj类型
B.obj值
C.obj长度
D.obj地址
【答案】A
【解析】isinstance检查对象是否为指定类型(含子类)。type(obj)==str只检查精确类型。
24.class A:pass; a=A(); print(type(a).__name__)输出( )
A.A
B.a
C.type
D.class
【答案】A
【解析】type(a)返回类A,.__name__获取类名字符串"A"。
25.面向对象相比面向过程主要优点是( )
A.速度更快
B.代码复用和易维护
C.无需变量
D.只能一个文件
【答案】B
【解析】封装隐藏细节,继承复用代码,多态灵活扩展。大规模项目优势更明显。
三、程序分析题(共3题,每题6分,共18分)
26.class Student:
def ______(self,name,age):
self.name=name
self.age=age
def show(self):
______"姓名"+self.name+"年龄"+str(self.age)
s=Student("张三",18)
s.show()
【答案】(1)__init__(3分);(2)print(3分)。
【解析】__init__是构造方法初始化name和age。show方法中用print输出实例信息。self指代当前实例。
27.class Dog
def __init__(self)
self.name="旺财"
def bark self:
print("汪")
d=Dog()
d.bark()
【答案】(1)class Dog后缺冒号(3分);(2)bark self缺括号,应为bark(self)(3分)。
【解析】class定义和def定义后都需要冒号。方法定义括号中必须包含self参数。Python语法严格要求这些。
28.class Counter:
count=0
def __init__(self):
self.value=0
def add(self):
self.value+=1
Counter.count+=1
c1=Counter()
c2=Counter()
c1.add()
c2.add()
c2.add()
print(c1.value,c2.value,Counter.count)
【答案】1 2 3
【解析】c1.add一次→c1.value=1,c2.add两次→c2.value=2。类属性Counter.count共享,三次add→3。实例属性独立,类属性共享。
四、程序设计题(3题,29/30各6分/31各8分)
29.定义类Rectangle,有属性width和height,方法area()返回面积。输入宽高创建对象输出面积。样例:5 3→面积15
【答案】class Rectangle:
def __init__(self,w,h):
self.width=w
self.height=h
def area(self):
return self.width*self.height
w,h=map(int,input().split())
r=Rectangle(w,h)
print("面积"+str(r.area()))
【解析】__init__初始化宽高。area方法返回width*height。self访问实例属性。r=Rectangle(5,3);r.area()→15。
30.定义类Circle,属性radius,方法perimeter()返回周长和area()返回面积(保留一位小数)。样例:5→周长31.4 面积78.5
【答案】class Circle:
def __init__(self,r):
self.radius=r
def perimeter(self):
return round(2*3.14159*self.radius,1)
def area(self):
return round(3.14159*self.radius**2,1)
r=float(input())
c=Circle(r)
print("周长"+str(c.perimeter())+" 面积"+str(c.area()))
【解析】两个方法分别计算周长和面积。round保留一位小数。self.radius访问实例属性。类封装数据和方法。
31.定义父类Animal(name属性和speak方法输出"叫"),子类Dog和Cat继承并重写speak分别输出"汪汪"和"喵喵"。输入名字和类型创建对象。样例:旺财 Dog→汪汪
【答案】class Animal:
def __init__(self,name):
self.name=name
def speak(self):
print("叫")
class Dog(Animal):
def speak(self):
print("汪汪")
class Cat(Animal):
def speak(self):
print("喵喵")
name=input();t=input()
if t=="Dog":a=Dog(name)
elif t=="Cat":a=Cat(name)
else:a=Animal(name)
a.speak()
【解析】子类重写(override)父类speak方法。dog.speak()调用Dog的speak而非Animal的。多态:同一方法不同表现。
五、综合应用题(共1题,每题12分,共12分)
32.设计银行账户类Account:属性name和balance;方法deposit/withdraw(余额不足提示)/show_info;创建对象演示存取。样例:创建张三1000→存500→取200→余额1300
【答案】class Account:
def __init__(self,name,balance=0):
self.name=name
self.balance=balance
def deposit(self,amount):
self.balance+=amount
print('存款'+str(amount)+'余额'+str(self.balance))
def withdraw(self,amount):
if amount>self.balance:
print('余额不足')
else:
self.balance-=amount
print('取款'+str(amount)+'余额'+str(self.balance))
def show(self):
print('账户'+self.name+'余额'+str(self.balance))
acc=Account('张三',1000)
acc.deposit(500)
acc.withdraw(200)
acc.show()
【解析】__init__初始化姓名和余额(默认0)。deposit增加余额。withdraw检查余额后扣减。方法封装业务逻辑。
原创精品资源学科网独家享有版权,侵权必究!
学科网(北京)股份有限公司
学科网(北京)股份有限公司
学科网(北京)股份有限公司
$