美文网首页
Day6-作业

Day6-作业

作者: 晓晓的忍儿 | 来源:发表于2018-07-23 17:26 被阅读0次

    1.写一个程序
    a.用一个变量来保存一个班级的学生信息,学生信息包括:姓名、学号、成绩(英语、体育、美术、数学)、年龄
    b.给这个班级添加学生
    c.根据姓名查看班级里的某个学生信息
    d.根据姓名删除一个指定的学生信息
    e.查看班级的所有的学生信息
    f.求指定的学生平均成绩

    学生管理系统

    list1=[]
    flage=False
    while True:
        flage1=False
        while True:
            print("欢迎进入千峰学生管理系统")
            print('\n')
            print('=========================')
            print('1.添加学生')
            print('2.查看学生')
            print('3.删除学生')
            print('q.退出系统')
            print('=========================')
            mul1=input('>>>')
            while True:
                if mul1=='1':
                    dict1 = {}
                    dict2 = {}
                    name=input('请输入学生的姓名:')
                    number=input('请输入学生的学号:')
                    english_grade=int(input('请输入学生英语成绩:'))
                    sports_grade = int(input('请输入学生体育成绩:'))
                    sports_art = int(input('请输入学生美术成绩:'))
                    sports_math = int(input('请输入学生数学成绩:'))
                    age=input('请输入学生的年龄:')
                    dict1['英语成绩']=english_grade
                    dict1['体育成绩'] = english_grade
                    dict1['美术成绩'] = english_grade
                    dict1['数学成绩'] = english_grade
                    dict2['学生姓名']=name
                    dict2['学生学号']=number
                    dict2['学生成绩']=dict1
                    dict2['学生年龄']=age
                    list1.append(dict2)
                    print('1.继续添加')
                    print('2.返回首页')
                    mul111=input('>>>')
                    if mul111=='1':
                        mul1='1'
                        continue
                    elif mul111=='2':
                        flage1=True
                        break
                    else:
                        print('没有该选项,请返回首页,并严格按照要求进行输入,错误操作将退出系统')
                        mul112=input('希望留在添加页面请输入1,返回首页请输入2:')
                        if mul112=='1':
                            mul1='1'
                            continue
                        elif mul112=='2':
                            flage1 = True
                            break
                        else:
                            flage=True
                            flage1=True
                            break
                elif mul1=='2':
                    if list1:
                        pass
                    else:
                        print('数据库中并没有任何同学的信息,请添加学生信息')
                        num1=input('输入1返回首页,输入2进入添加页面')
                        if num1=='1':
                            flage1 = True
                            break
                        elif num1=='2':
                            mul1='1'
                            continue
                        else:
                            flage = True
                            flage1 = True
                            break
                    print('1.查找所有学生')
                    print('2.根据学生姓名查找学生')
                    print('3.查询学生的平均成绩')
                    print('4.返回首页')
                    flage2=False
                    while True:
                        mul121=input('>>>')
                        if mul121=='1':
                            for x in list1:
                                for key2 in x:
                                    if key2!='学生成绩':
                                        print(key2,':',x[key2],sep='',end='\t')
                                    elif key2=='学生成绩':
                                        print(key2,end='')
                                        print('(',end='')
                                        for key22 in x[key2]:
                                            print(key22, ':',x[key2][key22] ,sep='', end='\t')
                                        print(')',end='\t')
                                print('\n')
                        elif mul121=='2':
                            str21=input('请输入要查找的学生姓名:')
                            num=0
                            for y in list1:
                                if str21 == y['学生姓名']:
                                    num=1
                                    for key23 in y:
                                        if key23 != '学生成绩':
                                            print(key23, ':', y[key23], sep='', end='\t')
                                        elif key23 == '学生成绩':
                                            print(key23, end='')
                                            print('(', end='')
                                            for key24 in y[key23]:
                                                print(key24, ':', y[key23][key24], sep='', end='\t')
                                            print(')', end='\t')
                                    print('\n')
                            if num==0:
                                print('数据库中并没有该同学,请查询所有学生,确定您是否操作有误')
                                mul1='2'
                                continue
                        elif mul121=='3':
                            str21 = input('请输入要查找的学生姓名:')
                            num = 0
                            sum=0
                            vag=0
                            for y in list1:
                                if str21 in y.values():
                                    num = 1
                                    for key25 in y:
                                        if key25 != '学生成绩':
                                            print(key25, ':', y[key25], sep='', end='\t')
                                        elif key25 == '学生成绩':
                                            print(key25, end='')
                                            print('(', end='')
                                            for key26 in y[key25]:
                                                sum+=int(y[key25][key26])
                                                vag+=1
                                                print(key26, ':',y[key25][key26] , sep='', end='\t')
                                            print(')', end=' ')
                            print()
                            print('学生的评价成绩为%f'%(sum/vag))
                            if num == 0:
                                print('数据库中并没有该同学,请查询所有学生,确定您是否操作有误')
                                mul1 = '2'
                                continue
                        elif mul121=='4':
                            flage2=True
                            flage1 = True
                            break
                        else:
                            print('没有该选项,请返回首页,并严格按照要求进行输入,错误操作将退出系统')
                            mul122 = input('希望留在查找页面请输入1,返回首页请输入2:')
                            if mul122 == '1':
                                mul1 = '2'
                                break
                            elif mul122 == '2':
                                flage2=True
                                flage1 = True
                                break
                            else:
                                flage = True
                                flage1 = True
                                flage2=True
                                break
                    if flage2:
                        break
                elif mul1=='3':
                    if list1:
                        pass
                    else:
                        print('数据库中并没有任何同学的信息,请添加学生信息')
                        num1=input('输入1返回首页,输入2进入添加页面')
                        if num1=='1':
                            flage1 = True
                            break
                        elif num1=='2':
                            mul1='1'
                            continue
                        else:
                            flage = True
                            flage1 = True
                            break
                    name_del = input('请输入要删除学生的姓名:')
                    list2=[]
                    num=0
                    for x in list1[:]:
                        if name_del in x.values():
                            print(num,name_del,end='\t')
                            for key3 in x:
                                if key3 != '学生成绩':
                                    print(key3, ':', x[key3], sep='', end='\t')
                                elif key3 == '学生成绩':
                                    print(key3, end='')
                                    print('(', end='')
                                    for key32 in x[key3]:
                                        print( key32, ':', x[key3][key32], sep='', end='\t')
                                    print(')', end='\t')
                            print('')
                            list2.append(x)
                            num+= 1
                        if num == 0:
                            print('数据库中并没有该同学,请查询所有学生,确定您是否操作有误')
                            flage1 = True
                            break
                    str3 = int(input('>>>'))
                    str4 = list2.pop(str3)
                    list1.remove(str4)
                    print('1.继续删除')
                    print('2.返回上一层')
                    mul13=input('>>>')
                    if mul13=='1':
                        mu11 = '3'
                        continue
                    elif mul13=='2':
                        flage1 = True
                        break
                    else:
                        print('没有该选项,请返回首页,并严格按照要求进行输入,错误操作将退出系统')
                        mul132 = input('希望留在删除页面请输入1,返回首页请输入2:')
                        if mul132 == '1':
                            mul1 = '3'
                            continue
                        elif mul132 == '2':
                            flage1 = True
                            break
                        else:
                            flage = True
                            flage1 = True
                            break
                elif mul1=='q':
                    flage=True
                    flage1=True
                    break
                else:
                    print('没有该功能,请返回首页重新操作')
                    flage1=True
                    break
            if flage1:
                break
        if flage:
            break
    print('你已经退出本系统,欢迎下次登录')
    
    
    
    
    
    

    结果:

    D:\Python项目\Day5-练习和列表\code\venv\Scripts\python.exe D:/Python项目/Day6-字典/code/05-学生管理系统.py
    欢迎进入千峰学生管理系统

    =========================
    1.添加学生
    2.查看学生
    3.删除学生
    q.退出系统
    =========================

    1
    请输入学生的姓名:we
    请输入学生的学号:23
    请输入学生英语成绩:34
    请输入学生体育成绩:45
    请输入学生美术成绩:56
    请输入学生数学成绩:67
    请输入学生的年龄:23
    1.继续添加
    2.返回首页
    2
    欢迎进入千峰学生管理系统

    =========================
    1.添加学生
    2.查看学生
    3.删除学生
    q.退出系统
    =========================

    2
    1.查找所有学生
    2.根据学生姓名查找学生
    3.查询学生的平均成绩
    4.返回首页
    5
    没有该选项,请返回首页,并严格按照要求进行输入,错误操作将退出系统
    希望留在查找页面请输入1,返回首页请输入2:1
    1.查找所有学生
    2.根据学生姓名查找学生
    3.查询学生的平均成绩
    4.返回首页
    2
    请输入要查找的学生姓名:we
    学生姓名:we 学生学号:23 学生成绩(英语成绩:34 体育成绩:34 美术成绩:34 数学成绩:34 ) 学生年龄:23

    1
    学生姓名:we 学生学号:23 学生成绩(英语成绩:34 体育成绩:34 美术成绩:34 数学成绩:34 ) 学生年龄:23

    3
    请输入要查找的学生姓名:we
    学生姓名:we 学生学号:23 学生成绩(英语成绩:34 体育成绩:34 美术成绩:34 数学成绩:34 ) 学生年龄:23
    学生的评价成绩为34.000000
    3
    请输入要查找的学生姓名:we
    学生姓名:we 学生学号:23 学生成绩(英语成绩:34 体育成绩:34 美术成绩:34 数学成绩:34 ) 学生年龄:23
    学生的评价成绩为34.000000
    4
    欢迎进入千峰学生管理系统

    =========================
    1.添加学生
    2.查看学生
    3.删除学生
    q.退出系统
    =========================

    3
    请输入要删除学生的姓名:we
    0 we 学生姓名:we 学生学号:23 学生成绩(英语成绩:34 体育成绩:34 美术成绩:34 数学成绩:34 ) 学生年龄:23
    0
    1.继续删除
    2.返回上一层
    1
    数据库中并没有任何同学的信息,请添加学生信息
    输入1返回首页,输入2进入添加页面1
    欢迎进入千峰学生管理系统

    =========================
    1.添加学生
    2.查看学生
    3.删除学生
    q.退出系统
    =========================

    q
    你已经退出本系统,欢迎下次登录

    修改

    
    

    相关文章

      网友评论

          本文标题:Day6-作业

          本文链接:https://www.haomeiwen.com/subject/lhyjmftx.html