• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    python实现学生管理系统源码

    本文实例为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下

    一.面向过程版

    import os
    
    stu_list = []
    
    
    def show_menu():
        print('1.添加学生')
        print('2.删除学生')
        print('3.修改学生信息')
        print('4.查询单个学生信息')
        print('5.查询所有学生信息')
        print('6.退出系统')
    
    
    def insert_student():
        name = input('请输入学生名字:')
        for stu in stu_list:
            if stu['name'] == name:
                print('.........学生信息已存在........')
                return
        age = input('请输入学生年龄:')
        gender = input('请输入学生性别:')
        stu_dict = {'name': name, 'age': int(age), 'gender': gender}
        stu_list.append(stu_dict)
        print("学生信息添加成功!")
    
    
    def remove_student():
        name = input('请输入要操作的学生的名字:')
        for stu in stu_list:
            if stu['name'] == name:
                stu_list.remove(stu)
                print('删除成功!')
                break
        else:
            print('........该学生信息不存在,无法删除.........')
    
    
    def modify_student():
        name = input('请输入要操作的学生的名字:')
        for stu in stu_list:
            if stu['name'] == name:
                stu['age'] = int(input('请输入新的年龄:'))
                print('修改成功!')
                break
        else:
            print('........该学生信息不存在,无法修改.........')
    
    
    def search_student():
        name = input('请输入要操作的学生的名字:')
        for stu in stu_list:
            if stu['name'] == name:
                print(f'姓名:{stu["name"]},年龄:{stu["age"]},性别:{stu["gender"]}')
                break
        else:
            print('........该学生信息不存在.......')
    
    
    def show_all_stu():
        if len(stu_list):
            for stu in stu_list:
                print(f'姓名:{stu["name"]},年龄:{stu["age"]},性别:{stu["gender"]}')
        else:
            print("目前没有学生信息!")
    
    
    def save():
        f = open('student.txt', 'w')
        f.write(str(stu_list))
        f.close()
    
    
    def read_file():
        global stu_list
        if os.path.exists('student.tct'):
            f = open('student.txt', 'r', encoding='utf-8')
            buf = f.read()
            if buf:
                stu_list = eval(buf)
            f.close()
    
    
    def main():
        read_file()
        while True:
            show_menu()
            opt = input('请输入用来选择的编号:')
            if opt == '1':
                print('1.添加学生')
                insert_student()
            elif opt == '2':
                print('2.删除学生')
                remove_student()
            elif opt == '3':
                print('3.修改单个学生信息')
                modify_student()
            elif opt == '4':
                print('查询单个学生信息')
                search_student()
            elif opt == '5':
                print('5.查询所有学生信息')
                show_all_stu()
            elif opt == '6':
                print('欢迎下次使用本系统')
                save()
                break
            else:
                print('输入有误,请重新输入')
                continue
            input('........回车键继续操作........')
    
    
    main()

    二.面向对象版

    1.工程文件

    2.main.py

    import student_manage_sysytem as sms
    
    if __name__ == '__main__':
        stu_sms = sms.StudenManagerSystem()
        stu_sms.start()

    3.student.py

    class Student():
        def __init__(self, stu_id, name, age, gender):
            self.sut_id = stu_id
            self.name = name
            self.age = age
            self.gender = gender
    
        def __str__(self):
            return f"{self.sut_id},{self.name},{self.age},{self.gender}"

    4.student_manage_system.py

    import student
    
    
    class StudenManagerSystem():
        def __init__(self):
            self.stu_dict = {}
    
        @staticmethod
        def __show_menu():
            print('1.添加学生')
            print('2.删除学生')
            print('3.修改学生信息')
            print('4.查询单个学生信息')
            print('5.查询所有学生信息')
            print('6.退出系统')
    
        def __insert_student(self):
            stu_id = input('请输入学生学号:')
            if stu_id in self.stu_dict:
                print('学生信息已经存在,不需要重复添加')
                return
            name = input('请输入学生名字:')
            age = input('请输入学生年龄:')
            gender = input('请输入学生性别:')
            stu = student.Student(stu_id, name, age, gender)
            self.stu_dict[stu_id] = stu
    
        def __removw_student(self):
            stu_id = input('请输入学号:')
            if stu_id in self.stu_dict:
                del self.stu_dict[stu_id]
                print('学生已经删除')
            else:
                print('学生信息不存在,无法删除')
    
        def __modify_student(self):
            stu_id = input('请输入学号:')
            if stu_id in self.stu_dict:
                stu = self.stu_dict[stu_id]
                stu.age = input('请输入新的年龄:')
                print('信息已经修改完毕')
            else:
                print('学生信息不存在,无法修改')
    
        def __search_student(self):
            stu_id = input('请输入学号:')
            if stu_id in self.stu_dict:
                stu = self.stu_dict[stu_id]
                print(stu)
            else:
                print('学生信息不存在')
    
        def __save(self):
            f = open('student.txt', 'w', encoding='utf-8')
            for stu in self.stu_dict.values():
                f.write(str(stu) + '\n')
            f.close()
    
        def __load_info(self):
            try:
                f = open('student.txt', 'r', encoding='utf-8')
                buf_list = f.readlines()
                for buf in buf_list:
                    buf = buf.strip()
                    info_list = buf.split(',')
                    stu = student.Student(*info_list)
                    stu_id = info_list[0]
                    self.stu_dict[stu_id] = stu
                f.close()
            except Exception:
                pass
    
        def __show_all_info(self):
            for stu in self.stu_dict.values():
                print(stu)
    
        def start(self):
            self.__load_info()
            while True:
                self.__show_menu()
                opt = input('请输入用来选择的编号:')
                if opt == '1':
                    print('1.添加学生')
                    self.__insert_student()
                elif opt == '2':
                    print('2.删除学生')
                    self.__removw_student()
                elif opt == '3':
                    print('3.修改单个学生信息')
                    self.__modify_student()
                elif opt == '4':
                    print('查询单个学生信息')
                    self.__search_student()
                elif opt == '5':
                    print('5.查询所有学生信息')
                    self.__show_all_info()
                elif opt == '6':
                    self.__save()
                    print('欢迎下次使用本系统')
                    break
                else:
                    print('输入有误,请重新输入')
                    continue
                input('........回车键继续操作........')

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • 教你用python实现一个无界面的小型图书管理系统
    • 基于python实现银行管理系统
    • 基于python实现图书管理系统
    • python实现简易名片管理系统
    • Python实现学生管理系统的代码(JSON模块)
    • python实现学生通讯录管理系统
    • 使用python实现学生信息管理系统
    • 利用Python实现学生信息管理系统的完整实例
    • 教你用Python实现简易版学生信息管理系统(含源码)
    上一篇:python爬虫之生活常识解答机器人
    下一篇:浅谈pytorch中的nn.Sequential(*net[3: 5])是啥意思
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    python实现学生管理系统源码 python,实现,学生,管理系统,