from student import *
class StudentManager():
def __init__(self):
#存储数据所用列表
self.student_list=[]
def run(self):
self.load_student()
while True:
self.show_menu()
menu_num=int(input('请输入您要输入的功能序号'))
if menu_num ==1:
self.add_student()
elif menu_num==2:
self.del_student()
elif menu_num==3:
self.modify_student()
elif menu_num==4:
self.search_student()
elif menu_num==5:
self.show_student()
elif menu_num==6:
self.save_student()
elif menu_num==7:
break
#系统功能函数
@staticmethod
def show_menu():
print('请选择如下功能')
print('1.添加学员')
print('2.删除学员')
print('3.修改学员')
print('4.查询学员')
print('5.显示所有学员信息')
print('6.保存学员信息')
print('7.退出系统')
#2.1显示功能菜单
#2.2添加学员
def add_student(self):
print('添加学员信息')
name=input('请输入您的姓名')
gender = input('请输入您的性别')
tel=input('请输入您的手机号')
student =Student(name,gender,tel)
self.student_list.append(student)
print(self.student_list)
print(student)
#2.3删除学员
def del_student(self):
print('删除学员信息')
del_name=input('请输入要删除学员的姓名')
for i in self.student_list:
if i.name==del_name:
self.student_list.remove(i)
break
else:
print('查无此人')
print(self.student_list)
#2.4修改学员
def modify_student(self):
print('修改学员信息')
modify_name = input('请输入要删除学员的姓名')
for i in self.student_list:
if i.name == modify_name:
i.name=input('请输入学员姓名')
i.gender=input('请输入学员性别')
i.tel=input('请输入学员手机号')
print(f'修改学员成功,姓名:{i.name},性别{i.gender},手机号{i.tel}')
break
else:
print('查无此人')
print(self.student_list)
##2.5查询学员
def search_student(self):
print('查找学员信息')
search_name = input('请输入要删除学员的姓名')
for i in self.student_list:
if i.name == search_name:
print(f'姓名:{i.name},性别{i.gender},手机号{i.tel}')
break
else:
print('查无此人')
print(self.student_list)
def show_student(self):
print('显示所有学员信息')
print('姓名\t性别\t手机号')
for i in self.student_list:
print(f'{i.name}\t{i.gender}\t{i.tel}')
def save_student(self):
print('保存学员信息')
f=open('student.data','w')
new_list=[i.__dict__ for i in self.student_list]
f.write(str(new_list))
f.close()
def load_student(self):
print('加载学员信息')
try:
f=open('student.data','r')
except:
f = open('student.data', 'r')
else:
data=f.read()
new_list=eval(data)
self.student_list=[Student(i['name'],i['gender'],i['tel'])for i in new_list]
finally:
f.close()