day06 作业 (待完善版) 2018-07-23

stu_info = []
# class_info ={'name': 'Python1805', 'address': '19-01', 'teacher': 'Ms.Yu', 'student': stu_info}

# 添加学生
while True:
    print('================================\n\
      1. 录入学生信息\n\
      2. 查看学生信息\n\
      3. 查看所有学生信息\n\
      4. 删除学生信息\n\
      5. 退出程序\n\
================================\n')
    operation = int(input('请输入数字执行对应操作:\n>'))
    while operation == 1:
        student = {'name': None, 'ID': None, 'age': None, 'grade': {}}
        stu_name = input('请输入学生姓名:\n>>')
        stu_id = input('请输入学生学号:\n>>')
        stu_age = int(input('请输入学生年龄:\n>>'))
        student.update({'name': stu_name, 'ID': stu_id, 'age': stu_age, 'grade': {}})
        stu_info.append(student)
        English_grade = int(input('请输入%s的英语成绩:\n>>' % student['name']))
        student['grade'].update({'English': English_grade})
        PE_grade = int(input('请输入%s的体育成绩:\n>>'% student['name']))
        student['grade'].update({'PE': PE_grade})
        Art_grade = int(input('请输入%s的美术成绩:\n>>'% student['name']))
        student['grade'].update({'Art': Art_grade})
        Math_grade = int(input('请输入%s的数学成绩:\n>>'% student['name']))
        student['grade'].update({'Math': Math_grade})
        print('添加成功!!!')
        print('================================')
        print('继续添加请输入1,否则请输入0')
        operation = int(input('请输入数字执行对应操作:\n>'))

    while operation == 2:
        find_name = input('请输入需要查找的学生姓名:\n>>')
        for item in stu_info:
            count = 0
            if item['name'] == find_name:
                count += 1
                print('%s的信息如下:'% find_name)
                print('===============================')
                print('学号:%s'% item['ID'])
                print('年龄:%2d'%item['age'])
                print('英语成绩:%d' % item['grade']['English'],type(item['grade']['English']))
                print('数学成绩:%d' % item['grade']['Math'])
                print('美术成绩:%d' % item['grade']['Art'])
                print('体育成绩:%d' % item['grade']['PE'])
        if count == 0:
            print('查无此人!!!')
        op0 = input('是否继续查找(是:Y;否:任意输入)?\n>>')
        if op0 == 'Y' or op0 == 'y':
            continue
        else:
            break

    while operation == 3:
        length = len(stu_info)
        sum_eng = 0
        sum_math = 0
        sum_art = 0
        sum_pe = 0
        print('================')
        print('1.查看全部学生信息')
        print('2.查看全班平均成绩')
        print('3.返回上层')
        op1 = int(input('请输入数字执行对应操作:\n>>'))
        if op1 == 1:
            for item in stu_info:
                print(item)
        if op1 == 2:

            for item in stu_info:
                sum_eng += item['grade']['English']
                sum_math += item['grade']['Math']
                sum_art += item['grade']['Art']
                sum_pe += item['grade']['PE']
            print('班级平均成绩如下:')
            print('================')
            print('英语成绩:%.2f' % (sum_math / length))
            print('数学成绩:%.2f' % (sum_math / length))
            print('美术成绩:%.2f' % (sum_art / length))
            print('体育成绩:%.2f' % (sum_pe / length))
        print('返回上层请输入y,回车返回主菜单')
        op2 = input('请输入数字执行对应操作:\n>>>')
        if op2 == 'y' and op2 == 'Y':
            continue
        else:
            break
    while operation == 4:
        delete_name = input('请输入需要删除的学生姓名:\n>>')
        for item in stu_info:
            count = 0
            if item['name'] == delete_name:
                stu_info.remove(item)
        if count == 0:
            print('查无此人!!!')
        op3 = input('是否继续查找(是:Y;否:任意输入)?\n>>')
        if op3 == 'Y' or op3 == 'y':
            continue
        else:
            break

    if operation == 5:
        print('谢谢使用!!!')
        break


================================
      1. 录入学生信息
      2. 查看学生信息
      3. 查看所有学生信息
      4. 删除学生信息
      5. 退出程序
================================

请输入数字执行对应操作:
>1
请输入学生姓名:
>>刘德华
请输入学生学号:
>>12
请输入学生年龄:
>>34
请输入刘德华的英语成绩:
>>90
请输入刘德华的体育成绩:
>>92
请输入刘德华的美术成绩:
>>98
请输入刘德华的数学成绩:
>>86
添加成功!!!
================================
继续添加请输入1,否则请输入0
请输入数字执行对应操作:
>1
请输入学生姓名:
>>王祖贤
请输入学生学号:
>>14
请输入学生年龄:
>>25
请输入王祖贤的英语成绩:
>>94
请输入王祖贤的体育成绩:
>>86
请输入王祖贤的美术成绩:
>>96
请输入王祖贤的数学成绩:
>>85
添加成功!!!
================================
继续添加请输入1,否则请输入0
请输入数字执行对应操作:
>0
================================
      1. 录入学生信息
      2. 查看学生信息
      3. 查看所有学生信息
      4. 删除学生信息
      5. 退出程序
================================

请输入数字执行对应操作:
>2
请输入需要查找的学生姓名:
>>刘德华
刘德华的信息如下:
===============================
学号:12
年龄:34
英语成绩:90 
数学成绩:86
美术成绩:98
体育成绩:92
查无此人!!!
是否继续查找(是:Y;否:任意输入)?
>>
================================
      1. 录入学生信息
      2. 查看学生信息
      3. 查看所有学生信息
      4. 删除学生信息
      5. 退出程序
================================

请输入数字执行对应操作:
>3
================
1.查看全部学生信息
2.查看全班平均成绩
3.返回上层
请输入数字执行对应操作:
>>1
{'name': '刘德华', 'ID': '12', 'age': 34, 'grade': {'English': 90, 'PE': 92, 'Art': 98, 'Math': 86}}
{'name': '王祖贤', 'ID': '14', 'age': 25, 'grade': {'English': 94, 'PE': 86, 'Art': 96, 'Math': 85}}
返回上层请输入1,回车返回主菜单
请输入数字执行对应操作:
>>>1
================
1.查看全部学生信息
2.查看全班平均成绩
3.返回上层
请输入数字执行对应操作:
>>2
班级平均成绩如下:
================
英语成绩:85.50
数学成绩:85.50
美术成绩:97.00
体育成绩:89.00
返回上层请输入1,回车返回主菜单

你可能感兴趣的:(day06 作业 (待完善版) 2018-07-23)