python- -学生管理系统简单版(入门级别)

python- -学生管理系统简单版(入门级别)

模块一

  • def __ init __(self)
    -构造方法(创建学生信息字典)

  • def show_mwnu()
    -开始页面菜单设计

  • def insert_student(self)
    -插入新的学生信息

  • def remove_student(self)
    -删除指定学生信息

  • def modify_student(self)
    -修改指定学生信息

  • def search_student(self)
    -寻找目标学生信息

  • def show_all_info(self)

  • 展示所有学生信息

  • def save(self)
    -保存学生信息

  • def load_info(self)
    -载入学生信息

  • def start(self)
    -开始操作

import student
class Student_Manager_System(object):

    def __init__(self):
        self.stu_dict={}

    @staticmethod # 静态方法
    def show_mwnu():
        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 remove_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 show_all_info(self):
        for stu in self.stu_dict.values():
            print(stu)


    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):
        f=open('student.txt','r',encoding='utf-8')
        buf_list=f.readlines()
        for buf in buf_list:
            duf=buf.strip() # 去除\n
            info_list=duf.split(',') # 列表
            stu=student.Student(info_list[0],info_list[1],info_list[2],info_list[3])
            stu_id=info_list[0]
            self.stu_dict[stu_id]=stu
        f.close()


    def start(self):
        self.load_info()
        while True:
            self.show_mwnu()
            opt = input('请输入你需要的选择编号:')
            if opt == '1':
                print('********添加学生******* ')
                self.insert_student()
            elif opt == '2':
                print('********删除学生******** ')
                self.remove_student()
            elif opt == '3':
                print('********修改学生信息******** ')
                self.modify_student()
            elif opt == '4':
                print('********查询单个学生信息******** ')
                self.search_student()
            elif opt == '5':
                print('********查询所有的学生信息******** ')
                self.show_all_info()
            elif opt == '6':
                self.save()
                print('********欢迎下次使用 。()。******** ')
                print('6:退出系统 ')
                break
            else:
                print('输入有误,请重新输入')
                continue
            input('------回车键继续操作------')

模块二

class Student(object):
    def __init__(self,stu_id,name,age,gender):
        self.stu_id=stu_id
        self.name=name
        self.age=age
        self.gender=gender

    def __str__(self):
        return f"{self.stu_id},{self.name},{self.age},{self.gender}"

模块三

import student_manager_system as sms

if __name__ == '__main__':
    stu_sms=sms.Student_Manager_System()
    stu_sms.start()
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

白夜的月亮

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值