from managerStudent import * if __name__=='__main__': manager=managerStudent() manager.run()
class student(object): def __init__(self, id,name, gender, age): self.id=id self.name = name self.gender = gender self.age = age def __str__(self): return f'{self.id},{self.name},{self.gender},{self.age}'
from student import * class managerStudent(object): def __init__(self): #存储学员数据 - - 列表 self.student_list = [] # 二. 系统功能函数 # 2.1 显示功能菜单 -- 打印序号的功能对应关系 -- 静态 ``` @staticmethod def show_munu(): print("欢迎进入学生管理系统") print('1添加学生') print('2删除学生') print('3修改学生') print('4查询所有学生') print('5搜索学生') print('6退出系统') # 2.2 添加学员 def add_student(self): # 1. 用户输入姓名、性别、手机号 id = input('请输入学生学号') name = input('请输入学生姓名') gender = input('请输入学生姓别') age = input('请输入学生年龄') # 2. 创建学员对象 -- 类 ?类在student文件里面 先导入student模块,再创建对象 stu = student(id, name, gender, age) # 3. 将该对象添加到学员列表 self.student_list.append(stu) print('添加成功') # 2.3 删除学员 def del_student(self): # 1. 用户输入目标学员姓名 del_id = input('请输入要删除的学生学号') # 2. 遍历学员列表,如果用户输入的学员存在则删除学员对象,否则提示学员不存在 for i in self.student_list: if del_id == i.id: # 删除该学员对象 self.student_list.remove(i) print('删除成功') break else: # 循环正常价结束执行的代码:循环结束都没有删除任何一个对象,所以说明用户输入的目标学员不存在 print('没有该学生') # 2.4 修改学员信息 def modify_student(self): # 1. 用户输入目标学员姓名 modify_id = input('请输入要修改的学生学号') # 2. 遍历列表数据,如果学员存在修改姓名性别手机号,否则提示学员不存在 for i in self.student_list: if modify_id == i.id: i.name = input("修改名字") i.gender = input("修改性别") i.age = input('修改年龄') print('修改成功') break else: print('不存在该学生') # 2.5 查询所有学员信息 def show_student(self): for i in self.student_list: print('学号', '姓名', '性别', '年龄') print(i) # 2.6 查询学员信息 def search_student(self): # 1. 用户输入目标学员姓名 search_id = input('请输入搜索学生学号') # 2. 遍历列表。如果学员存在打印学员信息,否则提示学员不存在 for i in self.student_list: if search_id == i.id: print('学号', '姓名', '性别', '年龄') print(i) break else: print('无该学生') # 2.8 加载学员信息 def load_student(self): # 1. 打开文件:尝试r打开,如果有异常w try: f = open('student.data', 'r') except: f = open('student.data', 'w') else: # 2. 读取数据:文件读取出的数据是字符串还原列表类型;[{}] 转换 [学员对象] data = f.read() new_list = eval(data) self.student_list = [student(i['id'],i['name'], i['gender'], i['age']) for i in new_list] finally: f.close() def save_student(self): # 1. 打开文件 f=open('student.data','w') # 2. 文件写入数据 # 2.1 [学员对象] 转换成 [字典] new_list = [i.__dict__ for i in self.student_list] f.write(str(new_list)) # 3. 关闭文件 f.close() def run(self): # 1. 加载文件里面的学员数据 self.load_student() while True: # 2. 显示功能菜单 self.show_munu() # 3. 用户输入目标功能序号 # 4. 根据用户输入的序号执行不同的功能 -- 如果用户输入1,执行添加 num = input('请输入指令') if num=='1': # 添加学员 self.add_student() elif num=='2': # 删除学员 self.del_student() elif num=='3': # 修改学员信息 self.modify_student() elif num=='4': # 显示所有学员信息 self.show_student() elif num=='5': # 查询学员信息 self.search_student() elif num=='6': # 保存学员信息 self.save_student() break else: print('无效指令')
免费直接下载链接https://download.csdn.net/download/weixin_44498127/76972974