python–字典版学生成绩管理系统

目录

全局变量定义

菜单方法

添加学生信息 

删除学生信息 

修改学生成绩 

查找学生信息 

统计学生最高分、平均分、最低分

主运行函数 

全部源代码


实现对学生信息的添加、删除、修改、查询操作

全局变量定义

import math

定义一个空字典存放学生学号和成绩

stu_dict = {}

定义一个选择功能序号的元组

user_input_number = ("1", "2", "3", "4", "5", "6")

菜单方法

def menu():

        print("="*50)

        print("欢迎使用该班级学生成绩管理系统!".center(55))

        print("1:添加学生成绩")

        print("2:删除学生成绩")

        print("3:修改学生成绩")

        print("4:查询学生成绩")

        print("5:统计学生成绩")

        print("6:退出系统")

        print("="*50)

添加学生信息 

def input_stu():

        # 创建一个字典存放学生信息

        stu_num = input("请输入您要添加学生学号:")

        # 接收用户输入

        stu_grade = input("请输入该学生的成绩:")

        # 添加信息到字典

        stu_dict[stu_num] = stu_grade

删除学生信息 

def stu_delete():

        stu_num = input("请输入要删除的学生学号:")

        if stu_num in stu_dict.keys():

                # 先判断该学生是否在字典中

                del stu_dict[stu_num] print("删除成功!")

        else: print("未查询到该学生信息!")

修改学生成绩 

def stu_change():

        stu_num = input("请输入要修改的学生学号:")

        if stu_num in stu_dict.keys():

                # 先判断该学生是否在字典中

                stu_update = input("请输入修改后的学生成绩:")

                stu_dict[stu_num] = stu_update print("修改成功!")

        else: print("未查询到该学生信息!")

查找学生信息 

def stu_find():

        stu_num = input("请输入要查询的学生学号:")

        for i in stu_dict.keys():

                if i == stu_num:

                        print("学号:{}".format(i), "成绩:{}".format(stu_dict.get(i)))

        return print("未查询到该学生成绩!")

统计学生最高分、平均分、最低分

def grade_sta():

        stu_list = [] # 定义一个列表用来存放学生成绩

        for i in stu_dict.keys():

                stu_list.append(int(stu_dict.get(i)))

        print("成绩最大值:{}".format(max(stu_list)))

        print("成绩最小值:{}".format(min(stu_list)))

        grade_sum = sum(stu_list)

        avg = grade_sum/len(stu_list)

        print("平均分:{}".format(avg))

主运行函数 

if __name__ == '__main__':

         menu()

         while True:

        stu_input = input("请输入选择的功能:")

        if stu_input in user_input_number:

                if stu_input == "1":

                        # 添加学生

                        input_stu()

                elif stu_input == "2":

                        # 删除学生

                        stu_delete()

                elif stu_input == "3":

                        # 修改学生成绩

                        stu_change()

                elif stu_input == "4":

                        # 查询学生成绩

                        stu_find()

                elif stu_input == "5":

                        # 统计学生成绩

                        grade_sta()

                else: print("感谢您的使用!")

                        break

        else:

                print("请输入正确的序号选择!")

全部源代码

import math
stu_dict = {}
user_input_number = ("1", "2", "3", "4", "5", "6")


# 菜单
def menu():
    print("="*50)
    print("欢迎使用该班级学生成绩管理系统!".center(55))
    print("1:添加学生成绩")
    print("2:删除学生成绩")
    print("3:修改学生成绩")
    print("4:查询学生成绩")
    print("5:统计学生成绩")
    print("6:退出系统")
    print("="*50)


# 添加学生成绩
def input_stu():
    #  创建一个字典存放学生信息
    stu_num = input("请输入您要添加学生学号:")
    # 接收用户输入
    stu_grade = input("请输入该学生的成绩:")
    # 添加信息到字典
    stu_dict[stu_num] = stu_grade
    # 输出用户信息


# 删除学生
def stu_delete():
    stu_num = input("请输入要删除的学生学号:")
    if stu_num in stu_dict.keys():    # 先判断该学生是否在字典中
        del stu_dict[stu_num]
        print("删除成功!")
    else:
        print("未查询到该学生信息!")


# 修改学生成绩
def stu_change():
    stu_num = input("请输入要修改的学生学号:")
    if stu_num in stu_dict.keys():    # 先判断该学生是否在字典中
        stu_update = input("请输入修改后的学生成绩:")
        stu_dict[stu_num] = stu_update
        print("修改成功!")
    else:
        print("未查询到该学生信息!")


# 查找学生成绩
def stu_find():
    stu_num = input("请输入要查询的学生学号:")
    for i in stu_dict.keys():
        if i == stu_num:
            print("学号:{}".format(i), "成绩:{}".format(stu_dict.get(i)))
            return
    print("未查询到该学生成绩!")


# 统计学生最高分、最低分和平均分
def grade_sta():
    stu_list = []    # 定义一个列表用来存放学生成绩
    for i in stu_dict.keys():
        stu_list.append(int(stu_dict.get(i)))
    print("成绩最大值:{}".format(max(stu_list)))
    print("成绩最小值:{}".format(min(stu_list)))
    grade_sum = sum(stu_list)
    avg = grade_sum/len(stu_list)
    print("平均分:{}".format(avg))


if __name__ == '__main__':
    menu()
    while True:
        stu_input = input("请输入选择的功能:")
        if stu_input in user_input_number:
            if stu_input == "1":
                # 添加学生
                input_stu()
            elif stu_input == "2":
                # 删除学生
                stu_delete()
            elif stu_input == "3":
                # 修改学生成绩
                stu_change()
            elif stu_input == "4":
                # 查询学生成绩
                stu_find()
            elif stu_input == "5":
                # 统计学生成绩
                grade_sta()
            else:
                print("感谢您的使用!")
                break
        else:
            print("请输入正确的序号选择!")

 

物联沃分享整理
物联沃-IOTWORD物联网 » python–字典版学生成绩管理系统

发表评论