美文网首页
day12-周末作业

day12-周末作业

作者: _桑心人 | 来源:发表于2018-10-13 11:55 被阅读0次

    简单的学生管理系统

    代码示例

    """
    学生管理系统:
    """
    snos = 1800
    student = []
    def cai_dan():
        print('===============================')
        print('|     欢迎来到学生管理系统    |')
        print('===============================')
        print('|      1.添加学生             |')
        print('|      2.查看学生信息         |')
        print('|      3.删除学生信息         |')
        print('|      4.求指定的学生平均成绩 |')
        print('|      5.退出                 |')
        print('===============================')
        n = int(input('请选择:'))
        return n
    
    
    def print_student(student):
        print('===================================================================')
        print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
        print('===================================================================')
        for students in student:
            print('|', students['sno'], '|  ', students['name'], '|  ', students['age'], ' |  ',
                  students['tel'], '  |   ', students['escore'], '  |  ', students['pscore'], '|  ',
                  students['ascore'], '  |  ', students['mscore'], ' |')
            print('===================================================================')
    
    
    def add_student(student, snos):
        while 1:
            news = {}
            sno = 'py' + str(snos)
            name = input('请输入学生姓名:')
            age = input('请输入学生年龄:')
            tel = input('请输入学生电话号码:')
            # 英语、体育、美术、数学
            escore = int(input('请录入英语成绩:'))
            pscore = int(input('请录入体育成绩:'))
            ascore = int(input('请录入美术成绩:'))
            mscore = int(input('请录入数学成绩:'))
            news['sno'] = sno
            news['name'] = name
            news['age'] = age
            news['tel'] = tel
            news['escore'] = escore
            news['pscore'] = pscore
            news['ascore'] = ascore
            news['mscore'] = mscore
            student.append(news)
            print('添加成功!')
            snos += 1
            print_student(student)
            print('1.继续添加')
            print('0.返回菜单')
            n = int(input('请选择:'))
            if n == 0:
                return
    
    
    def cha_zhao_student(student):
        while 1:
            print('1.查看全班学生信息')
            print('2.查看个人学生信息')
            print('3.返回菜单')
            n = int(input('请选择:'))
            if student == []:
                print('该班级还没有学生,请添加!')
                print('1.是否添加')
                print('0.返回菜单')
                n = int(input('请选择:'))
                if n == 0:
                    add_student()
                return
            if n == 1:
                print('全班学生信息:')
                print_student(student)
            elif n == 2:
                print('1.按学号查找')
                print('2.按姓名查找')
                n = int(input('请选择:'))
                if n == 1:
                    sno = input('请输入你要查找的学生的学号:')
                    print('学生信息为:')
                    print('===================================================================')
                    print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                    print('===================================================================')
                    true = 0
                    for students in student:
                        if students['sno'] == sno:
                            print('|', students['sno'], '|  ', students['name'], '|  ', students['age'], ' |  ',
                                  students['tel'], '  |   ', students['escore'], '  |  ', students['pscore'], '|  ',
                                  students['ascore'], '  |  ', students['mscore'], ' |')
                            print('===================================================================')
                            true += 1
                    if true == 0:
                        print('没有你要查找的人!')
                else:
                    name = input('请输入你要查找的学生的姓名:')
                    print('学生信息为:')
                    print('===================================================================')
                    print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                    print('===================================================================')
                    true = 0
                    for students in student:
                        if students['name'] == name:
                            print('|', students['sno'], '|  ', students['name'], '|  ', students['age'], ' |  ',
                                  students['tel'], '  |   ', students['escore'], '  |  ', students['pscore'], '|  ',
                                  students['ascore'], '  |  ', students['mscore'], ' |')
                            print('===================================================================')
                            true += 1
                    if true == 0:
                        print('没有你要查找的人!')
            else:
                return
            print('1.继续查找')
            print('0.返回菜单')
            n = int(input('请选择:'))
            if n == 0:
                return
    
    
    def delete_student(student):
        while 1:
            print('1.按学号查找')
            print('2.按姓名查找')
            print('3.返回菜单')
            n = int(input('请选择:'))
            if n == 1:
                sno = input('请输入你要删除的学生的学号:')
                print('===================================================================')
                print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                print('===================================================================')
                true = 0
                for students in student:
                    new = [true]
                    if students['sno'] == sno:
                        print('|', students['sno'], '|  ', students['name'], '|  ', students['age'], ' |  ',
                              students['tel'], '  |   ', students['escore'], '  |  ', students['pscore'], '|  ',
                              students['ascore'], '  |  ', students['mscore'], ' |')
                        print('===================================================================')
                        true += 1
                        new.append(students)
                if true:
                    print('===================================================================')
                    print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                    print('===================================================================')
                    print('|', new[true]['sno'], '|  ', new[true]['name'], '|  ', new[true]['age'], ' |  ',
                          new[true]['tel'], '  |   ', new[true]['escore'], '  |  ', new[true]['pscore'], '|  ',
                          new[true]['ascore'], '  |  ', new[true]['mscore'], ' |')
                    print('===================================================================')
                    print('是否确认删除? 1.是 2.否')
                    n = int(input('请选择:'))
                    if n == 1:
                        student.remove(new[true])
                        print("删除成功!")
                else:
                    print('没有你要查找的人!')
            elif n == 2:
                name = input('请输入你要删除的学生的姓名:')
                print(' ===================================================================')
                print(' |  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                print(' ===================================================================')
                true = 0
                new = [true]
                for students in student:
                    if students['name'] == name:
                        true += 1
                        print(true, '|', students['sno'], '|  ', students['name'], '|  ', students['age'], ' |  ',
                              students['tel'], '  |   ', students['escore'], '  |  ', students['pscore'], '|  ',
                              students['ascore'], '  |  ', students['mscore'], ' |')
                        print(' ===================================================================')
                        new.append(students)
                print(new)
                if true >= 2:
                    n = int(input('请选择:'))
                    if n:
                        print('===================================================================')
                        print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                        print('===================================================================')
                        print('|', new[n]['sno'], '|  ', new[n]['name'], '|  ', new[n]['age'], ' |  ',
                              new[n]['tel'], '  |   ', new[n]['escore'], '  |  ', new[n]['pscore'], '|  ',
                              new[n]['ascore'], '  |  ', new[n]['mscore'], ' |')
                        print('===================================================================')
                        print('是否确认删除? 1.是 2.否')
                        n = int(input('请选择:'))
                        if n == 1:
                            student.remove(new[n])
                            print("删除成功!")
                elif true == 1:
                    print('是否确认删除? 1.是 2.否')
                    n = int(input('请选择:'))
                    if n == 1:
                        student.remove(new[true])
                        print("删除成功!")
                else:
                    print('没有你要查找的人!')
            else:
                return
            print('1.继续查找')
            print('0.返回菜单')
            n = int(input('请选择:'))
            if n == 0:
                return
    
    
    def avg_student(student):
        name = input('请输入你要求成绩的学生的姓名:')
        if student == []:
            print('该班级还没有学生,请添加!')
            print('1.是否添加')
            print('0.返回菜单')
            n = int(input('请选择:'))
            if n != 0:
                add_student()
            return
        for students in student:
            if students['name'] == name:
                print('学生信息为:')
                print('===================================================================')
                print('|  学号  |   姓名   | 年龄 | 电话号码 | 英语 | 体育 | 美术 | 数学 |')
                print('===================================================================')
                for students in student:
                    print('|', students['sno'], '|  ', students['name'], '|  ', students['age'], ' |  ',
                          students['tel'], '  |   ', students['escore'], '  |  ', students['pscore'], '|  ',
                          students['ascore'], '  |  ', students['mscore'], ' |')
                    print('===================================================================')
                sum1 = 0
                sum1 = students['escore'] + students['pscore'] + students['ascore'] + students['mscore']
                avg = sum1 / 4
                print('此学生的平均成绩为:', avg)
            else:
                print('没有你要查找的人!')
        print('1.继续求平均值')
        print('0.返回菜单')
        n = int(input('请选择:'))
        if n == 0:
            return
    
    
    while 1:
        n = cai_dan()
        if n == 1:
            add_student(student, snos)
        elif n == 2:
            cha_zhao_student(student)
        elif n == 3:
            delete_student(student)
        elif n == 4:
            avg_student(student)
        else:
            break
    print('您已退出学生管理系统!')
    

    运行结果大家自行测试!

    相关文章

      网友评论

          本文标题:day12-周末作业

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