目录
一、第一题
1、概述:
完成学生,组长,教师的设计与实现。
2、具体实现内容:
学生:
姓名, 年龄, 学号
吃饭, 睡觉, 学习
组长:
姓名, 年龄, 学号, 职务
吃饭, 睡觉, 学习, 管理
教师:
姓名, 年龄, 职务
吃饭, 睡觉, 教学, 管理
根据以上需求,需要考虑如何设计继承关系,是否会用到多继承等。
3、主函数:测试
学生小明:实现吃饭、睡觉、学习。
班级学习小组长,王组长:实现吃饭、睡觉、学习、管理班级学习。
教师王老师:实现吃饭、睡觉、上课教学、管理班级学习。
# 第一题:
class Base:
def __init__(self, name, age, eat, sleep):
self.name = name
self.age = age
self.eat = eat
self.sleep = sleep
class Student(Base):
def __init__(self, name, age, studentNumber, eat, sleep, study):
Base.__init__(self, name, age, eat, sleep)
self.studentNumber = studentNumber
self.study = study
class Leader(Student):
def __init__(self, name, age, studentNumber, position, eat, sleep, study, manage):
Student.__init__(self, name, age, studentNumber, eat, sleep, study)
self.position = position
self.manage = manage
class Teacher(Base):
def __init__(self, name, age, position, eat, sleep, teach, manage):
Base.__init__(self, name, age, eat, sleep)
self.position = position
self.teach = teach
self.manage = manage
# 学生小明:实现吃饭、睡觉、学习。
xiaoMing = Student('我叫小明', '小明的年龄为:22', '小明的学号:001', '小明在吃饭', '小明在睡觉', '小明在学习')
print(xiaoMing.eat, xiaoMing.sleep, xiaoMing.study)
# 班级学习小组长,王组长:实现吃饭、睡觉、学习、管理班级学习。
wangZuZhang = Leader('我叫王组长', '王组长的年龄为:22', '王组长的学号:002', '王组长组长', '王组长在吃饭', '王组长在睡觉', '王组长在学习', '王组长在管理班级学习')
print(wangZuZhang.eat, wangZuZhang.sleep, wangZuZhang.study, wangZuZhang.manage)
# 教师王老师:实现吃饭、睡觉、上课教学、管理班级学习。
wangLaoShi = Teacher('我叫王老师', '王老师的年龄是44', '王老师的职务是老师','王老师在吃饭', '王老师在睡觉', '王老师在上课教学', '王老师在管理班级学习')
print(wangLaoShi.eat, wangLaoShi.teach,wangLaoShi.manage)
二、第二题
按要求编写一个python应用程序∶
1、定义一个类,描述一个矩形,包含有长、宽两种属性(封装),和计算面积方法。
2、编写一个类,继承自矩形类,同时该类描述长方体,具有长、宽、高属性(封装),和计算体积的方法。
3、编写一个测试类,对以上两个类进行测试,创建一个长方体,定义其长、宽、高,输出其底面积和体积。
# 第二题:
class Rectangle:
def __init__(self, long, width):
self.long = long
self.width = width
def area(self):
area = self.long * self.width
print('底面积为:', area)
class Cuboid(Rectangle):
def __init__(self, long, width, high):
Rectangle.__init__(self, long, width)
self.high = high
def volume(self):
volume = self.long * self.width * self.high
print('体积为:', volume)
class Text:
cuboid = Cuboid(2, 2, 5)
cuboid.area()
cuboid.volume()