函数版的初级学生管理系统

student_list = []#创建学生信息存储的列表
def bdcz(student_list_para,id_class_para):#创建学生学号遍历匹配函数(这里要使用“学生学号”,“学生列表”)
    panduan = 0#定义判断变量,如果遍历匹配出现就返回变量1,以提供下一步操作
    for i in range(len(student_list_para)):#列表二维索引值遍历
        if student_list_para[i]['学号:'] == id_class_para:#遍历匹配
            panduan = 1#匹配成功变量为1
    return panduan#返回值
def chuangjian(xuehao_para,name_para,class_para):#创建列表,这里形参需要学生需要录入的信息(学号,姓名,班级)
        sutdent_zidian_para = {#以字典形式保存
            '学号:':xuehao_para,
            '姓名:':name_para,
            '班级:':class_para
        }
        return sutdent_zidian_para#这里需要将本次创建的信息返回为一个变量,然后通过变量添加进入学生信息列表
def del_student_list(student_list_para,del_student_list_para):#删除信息:这里形参需要用到(学生列表,需要删除的学生学号)
        panduan_1 = 0#创建判断变量
        for i in range(len(student_list_para)):#遍历索引值
            if student_list_para[i]['学号:'] == del_student_list_para:#使用索引值,进行二维匹配
                del student_list_para[i]#匹配成功,删除该生信息
                print('该生信息已经删除!')#提示删除成功!
                panduan_1 = 1#成功匹配学号,修改变量
        if panduan_1 == 0:#变量没有修改(没有匹配成功!),所以判断为没有该学号!
            print('删除失败,没有匹配到该生信息!')
while True:#死循环,使程序一直处于运行状态,直到用户需要停止为止
#开始进行提示操作(操作菜单):
    print('''学生管理系统(函数版)
        1.创建信息
        2.查询信息
        3.查询所有信息
        4.删除信息
        5.修改信息
        6.退出程序''')
    xuanze = int(input('操作>'))#用户选择操作
    if xuanze == 1:#用户选择操作符合创建信息
        id_class = int(input('学号》'))#输入创建学号
        pd = bdcz(student_list,id_class)#开始遍历匹配学号,学号不重复返回0 学号重复返回1
        if pd == 0:#返回值不变为0
            name = input('姓名》')#开始创建信息
            class_shi = input('班级》')
            lianjie = chuangjian(id_class,name,class_shi)#创建信息导入函数中,再定定义到变量中
            student_list.append(lianjie)#在学生信息列表中,创建信息
            print('创建成功!')#返回创建成功提示
        else:#返回值不为0,即学号重复导致判断变量更改,即判断学号重复!
            print('学号重复!')#提醒学号重复,需要重新创建
    elif xuanze == 2:#用户选择(这个地方,个人觉得直接打出来比较好)
        chaxun = int(input('输入查询学号>'))#输入需要查询的学号
        panduan = 0#判断变量
        for i in range(len(student_list)):#开始遍历索引值
            if student_list[i]['学号:'] == chaxun:#开始匹配
                print('该生信息:',student_list[i])#将匹配值打印
                panduan = 1#匹配成功,更改变量值
        if panduan == 0:#没有匹配成功,变量没有被改变
            print('没有该生信息!')#提醒用户没有该生的信息
    elif xuanze == 3:#用户选择(这也没有写函数,觉得直接写出来比较快捷)
        print('请登入教师账号:')#为了保护学生信息,提供了以一个教师登入保护
        tq = int(input('账号>'))
        if tq == 8417:
            mm = int(input('密码>'))
            if mm == 123456:
                print('学生信息:')
                for i in student_list:
                    print(i)
            else:
                print('密码错误!')
        else:
            print('账户不存在!')
    elif xuanze == 4:#用户选择
        xuehao_del = int(input('输入删除学号>'))#输入需要删除学生信息学号
        del_student_list(student_list,xuehao_del)#将student_list学生信息列表和删除学号导入进行函数内的运行
    elif xuanze == 5:#直接写的
        xuehao_1 = int(input('输入修改学号>'))#输入需要修改的学号
        panduan = 0
        for i in range(len(student_list)):#开始遍历索引值
            if student_list[i]['学号:'] == xuehao_1:#开始匹配
                panduan = 1#匹配成功变量更改
                #并且进行后续操作,出现选择修改页面
                print('''请选择修改信息(学号不可修改!):#
                        1.姓名
                        2.班级
                        3.退出修改''')
                xuanze_2 = int(input('选择修改项>'))#开始选择修改的信息
                if xuanze_2 == 1:
                    name_1 = input('请输入姓名>')
                    student_list[i]['姓名:'] = name_1#修改信息(下面皆是重复操作)
                elif xuanze_2 == 2:
                    class_xiugai = input('请输入班级>')
                    student_list[i]['班级:'] = class_xiugai
                elif xuanze_2 == 3:
                    print('修改程序已经退出!')
                    break#修改程序退出
                else:
                    print('无法识别,请重新输入!')#超出选项值,无法识别操作
        if panduan == 0:#变量没有更改,判断没有学号。
            print('学号不存在!')
    elif xuanze == 6:#用户选择判断
        print('程序结束!')#给用户提示,程序结束!
        break#程序结束
    else:#操作选择超出,选择值。无法执行,即重新操作
        print('错误操作,请重新选择!')

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值