项目要求:
读完题目,首先我们要确定程序思路
我们要全部通过类去实现
也就是 我们要实现管理员、学生、讲师、课程、教师五个类
管理员类
class Administration(object):
def __init__(self):
self.data = self.__load()
self.login_data = {}
def __load(self) -> list:
try:
Adm = open('Administration.csv', 'r')
readers = csv.DictReader(Adm)
Adm_dict = [dict(i) for i in readers]
Adm.close()
return Adm_dict
except Exception:
print('文件读取失败')
def see_course(self):
print('当前所有的课程信息为:')
for i in cou.data:
print(i)
print()
def see_student(self):
print('当前所有的学生信息为:')
for i in stu.data:
print(i)
print()
def see_student_course(self):
print('当前所有学生的选课信息为:')
for i in stu.data:
print(i['姓名'], '的选课信息为:', i['课程'])
print()
def set_course(self):
name = input('请输入你想添加的课程名')
c = [i['名称'] for i in cou.data]
if name in c:
print('你准备添加的课程 已经存在')
else:
cou.data.append({'名称': name, '人数': 0})
print('添加成功!')
print()
def set_student(self):
name = input('请输入你想添加的学生的姓名')
ID = input('请输入此学生的ID')
if ID in [i['ID'] for i in stu.data]:
print('这个ID已经存在,添加失败')
return
print('学生账号默认密码123456')
password = 123456
stu.data.append({'姓名': name, 'ID': ID, '密码': password, '课程': ''})
print('添加成功!')
print()
def set_teacher(self):
name = input('请输入你想添加的老师的姓名')
ID = input('请输入此老师的ID')
if ID in [i['ID'] for i in tea.data]:
print('这个ID已经存在,添加失败')
return
print('老师账号默认密码123456')
password = 123456
tea.data.append({'姓名': name, 'ID': ID, '密码': password, '课程': ''})
print('添加成功!')
print()
def app_teacher_to_class(self):
t_name = input('请输入你想操作的老师名')
if t_name not in [i['姓名'] for i in tea.data]:
print('你想操作的老师不存在,请重新操作')
return
c_name = input('请输入你想让该老师任课的班级')
if c_name not in [i['班名'] for i in cla.data]:
print('你想让老师任教的班级不存在,请重新操作')
return
for i in tea.data:
if i['姓名'] == t_name:
i['班级'] = c_name
for i in cla.data:
if i['班名'] == c_name:
i['任课老师'] = t_name
print('操作成功')
def set_class(self):
name = input('请输入你想创建的班级的名称:')
if name in [i['班名'] for i in cla.data]:
print('你想创建的班级已经存在,请重新操作')
return
if int(input('是否添加任课老师,是输入1,否输入0')):
t_name = input('请输入你想添加的老师名')
if t_name not in [i['姓名'] for i in tea.data]:
print('你想操作的老师不存在,请重新操作')
return
else:
t_name = ''
s_name_list = []
while int(input('是否添加学生,是输入1,否输入0')):
s_name = input('输入你想添加的学生名')
if s_name not in [i['姓名'] for i in stu.data]:
print('你想操作的学生不存在,请重新操作')
return
else:
s_name_list.append(s_name)
s_name = ''
if s_name_list == []:
cla.data.append({'班名': name, '任课老师': t_name, '学生': s_name})
print('操作成功')
else:
cla.data.append({'班名': name, '任课老师': t_name,
'学生': s_name.join(s_name_list)})
print('操作成功')
def app_student_to_class(self):
s_name = input('请输入你想操作的学生名')
if s_name not in [i['姓名'] for i in stu.data]:
print('你想操作的学生不存在,请重新操作')<