哪位大神会用Python做学生管理系统,希望大神能补充我的代码,感谢

class StudentManager(object):    def __init__(self):        self.stu_list = []    def run(self):        self.load_stu()        while True:            self.show_menu()            k = int(input('请输入功能序号:\n'))            if k == 1:                self.add_stu()            elif k == 2:                self.del_stu()            elif k == 3:                # 补充代码,实现调用相对应的方法                pass            elif k == 4:                self.find_stu()            elif k == 5:                self.show_stu()            elif k == 6:                # 补充代码,实现调用相对应的方法                pass            elif k == 7:                self.show_stu_age_reduce()            elif k == 8:                self.save()            elif k == 9:                # 补充代码,实现结束循环                pass            else:                print('输入错误,请输入1~9之间的数字!')    @staticmethod    def show_menu():        menu_info = \            '''            +----------------------+                      欢迎进入学生管理系统            | 1.添加学员             | 2.删除学员             | 3.修改学员信息             | 4.查询学员信息             | 5.显示全部学员信息             | 6.按年龄从小到大显示全部学员信息             | 7.按年龄从大到小显示全部学员信息             | 8.保存学员信息             | 9.退出系统             +----------------------+            '''        print(menu_info)    def add_stu(self):        while True:            try:                name = input("请输入姓名:")                if name == '':                    raise BaseException('姓名不能为空!')                gender = input('请输入您的性别:')                # 补充代码,实现判断如果输入的gender不是男也不是女,则抛出异常,异常提示信息为“性别只能是男或女”                pass                age = int(input("请输入年龄:"))            except ValueError:                print("输入无效,不是整形数值....重新录入信息")                continue            except BaseException as e:                print(e)                continue            # 根据输入的姓名、性别和年龄创建学生对象stu            pass            self.stu_list.append(stu)            print(stu)            break    def del_stu(self):        del_name = input('请输入要删除学员姓名:')        # 补充代码,实现功能:判断要删除的学员姓名是否存在,如果存在则删除,如果不存在则输出“查无此人”        pass            def new_input(self, old, new):        input_str = input(new)        if len(input_str) > 0:            return input_str        else:            return old    def modify_stu(self):        modify_name = input('请输入要修改的学员姓名:')        # 补充代码,实现功能:判断要修改的学员姓名是否存在,        # 如果存在,则提示用户“请输入新修改的名字[回车则不修改]:”、'请输入新修改的性别[回车则不修改]:'、 '请输入新修改的年龄[回车则不修改]:'        # 并调用new_input方法修改学员信息        # 如果不存在,则提示“该学员不存在!”        pass    def find_stu(self):        find_name = input('请输入要查询的学员姓名:')        for i in self.stu_list:            if i.name == find_name:                print(f'姓名:{i.name},性别:{i.gender},年龄:{i.age}\n')                break        # 补充代码,实现当要查询的学员姓名不存在时打印“该学员不存在!”        pass    def show_stu(self):        for i in self.stu_list:            print(f'姓名:{i.name},性别:{i.gender},年龄:{i.age}')    def show_stu_age_rise(self):        new_list = sorted(self.stu_list, key=lambda student: student.age)        for i in new_list:            print(f'姓名:{i.name},性别:{i.gender},年龄:{i.age}')    def show_stu_age_reduce(self):        new_list = sorted(self.stu_list, key=lambda student: student.age, reverse=True)        for i in new_list:            print(f'姓名:{i.name},性别:{i.gender},年龄:{i.age}')    def save(self):        f = open('student.data', 'w', encoding='utf_8')        new_list = [i.__dict__ for i in self.stu_list]        # 补充代码,实现将new_list转换为字符串后写入文件中        pass        f.close()    def load_stu(self):        global f        # 补充代码,实现以"r"模式打开学员数据文件,如果文件不存在(即发生异常)则以"w"模式打开文件        try:            pass        except:            pass        else:            data = f.read()            new_list = eval(data)            self.stu_list = [Student(i['name'], i['gender'], i['age']) for i in new_list]        finally:            f.close()

可以参考下这篇文章,希望对你有帮助

https://blog.csdn.net/h674174380/article/details/77931891

您好,我是有问必答小助手,您的问题已经有小伙伴解答了,您看下是否解决,可以追评进行沟通哦~

如果有您比较满意的答案 / 帮您提供解决思路的答案,可以点击【采纳】按钮,给回答的小伙伴一些鼓励哦~~

ps:问答VIP仅需29元,即可享受5次/月 有问必答服务,了解详情>>>https://vip.csdn.net/askvip?utm_source=1146287632