Python 学生类和大学生类:属性、方法和继承示例
Python 学生类和大学生类:属性、方法和继承示例
本示例展示了如何使用 Python 编写一个 Student 类,包含属性(姓名、学校、学号、性别、出生日期、成绩)和方法(设置姓名、设置成绩、打印属性信息)。同时,我们还创建了 Student 的子类 Undergraduate,添加了系别和专业属性,并覆盖了 show 方法以显示所有属性。
代码示例:
class Student:
def __init__(self, school, id, gender, birthday):
self.school = school
self.id = id
self.gender = gender
self.birthday = birthday
def setName(self, name):
self.name = name
def setScore(self, score):
self.score = score
def show(self):
print('姓名:', self.name)
print('学校:', self.school)
print('学号:', self.id)
print('性别:', self.gender)
print('出生日期:', self.birthday)
print('成绩:', self.score)
class Undergraduate(Student):
def __init__(self, school, id, gender, birthday):
super().__init__(school, id, gender, birthday)
def setDepartment(self, department):
self.department = department
def setMajor(self, major):
self.major = major
def show(self):
print('姓名:', self.name)
print('学校:', self.school)
print('学号:', self.id)
print('性别:', self.gender)
print('出生日期:', self.birthday)
print('系别:', self.department)
print('专业:', self.major)
print('成绩:', self.score)
使用示例:
# 创建一个学生对象
s = Student('清华大学', '20210001', '男', '2000-01-01')
s.setName('张三')
s.setScore(95)
s.show()
# 创建一个大学生对象
u = Undergraduate('清华大学', '20200001', '女', '2000-01-01')
u.setName('李四')
u.setScore(90)
u.setDepartment('计算机科学与技术系')
u.setMajor('人工智能')
u.show()
代码说明:
-
Student 类:
__init__方法初始化学生对象的属性。setName和setScore方法分别设置姓名和成绩。show方法打印学生的所有属性信息。
-
Undergraduate 类:
- 继承自
Student类,因此具有所有父类属性和方法。 __init__方法调用父类的__init__方法初始化继承的属性。setDepartment和setMajor方法分别设置系别和专业。- 覆盖父类的
show方法,打印学生的所有属性信息,包括系别和专业。
- 继承自
总结:
本示例展示了 Python 中类的定义、属性和方法、继承和覆盖等基本概念。通过编写 Student 和 Undergraduate 类,我们可以更加清晰地描述学生信息,并方便地进行操作和扩展。
原文地址: https://www.cveoy.top/t/topic/nVzq 著作权归作者所有。请勿转载和采集!