要求:
角色:学校、学员、课程、讲师
要求:
1. 创建北京、上海 2 所学校
2. 创建linux , python , go 3个课程 , linux\py 在北京开, go 在上海开
3. 课程包含,周期,价格,通过学校创建课程
4. 通过学校创建班级, 班级关联课程、讲师
5. 创建学员时,选择学校,关联班级
5. 创建讲师角色时要关联学校,
6. 提供两个角色接口
6.1 学员视图, 可以注册, 交学费, 选择班级,
6.2 讲师视图, 讲师可管理自己的班级, 上课时选择班级, 查看班级学员列表 , 修改所管理的学员的成绩
6.3 管理视图,创建讲师, 创建班级,创建课程
7. 上面的操作产生的数据都通过pickle序列化保存到文件里
一、程序流程图
二、程序代码
初步代码:
2.1 创建类
class School(object):
'''
对象1:
特征:
学校 = bj_oldboy_school
技能:
linux/python
对象2:
特征:
学校 = sh_oldboy_school
技能:
go
'''
def __init__(self, school_name, city_name, teachers=None, courses=None, students=None, banjis=None):
'''
:param school_name: 学校名
:param city_name: 城市名
:param teachers: 讲师
:param courses: 课程
:param students: 学员
:param banjis: 班级
'''
self.school_name = school_name
self.city_name = city_name
self.teschers = teachers
self.courses = courses
self.students = students
self.banjis = banjis
def show_info(self,attr=None):
'''
显示课程/讲师/学生/班级
:return:
'''
pass
def get_instance(self):
'''
根据名字获取对象
:return:
'''
pass
class Teacher:
'''
对象1:
特征:
姓名 = egon
性别 = 男
年龄 = 18
技能:
选择上课班级
修改学员成绩
查看班级学员
'''
def __init__(self,teaching, name, age, sex='male'):
'''
讲师属性
:param teaching:
:param name:
:param age:
:param sex:
'''
pass
def modify_score(self):
'''
修改学员成绩
:return:
'''
pass
class students:
'''
对象1:
特征:
姓名 = hgz
性别 = 男
年龄 = 18
课程 = python
班级 = python-20
技能:
选课
选班级
注册
交学费
'''
def __init__(self,name,sex,age,course,banji):
'''
学员属性
:param name: 学员姓名
:param sex: 性别
:param age: 年龄
:param course: 课程
:param banji: 班级
'''
pass
def choose_course(self,course):
'''
选课
:param course:
:return:
'''
pass
class choose_course(object):
'''
对象1:
特征:
课程名称
价格
技能:
'''
def __init__(self,course,price):
'''
课程属性
:param course: 课程名称
:param price: 价格
'''
pass