当前位置: 首页 > article >正文

使用python实现学生成绩管理系统

以下是一个使用Python实现的简单学生成绩管理系统:

# 定义一个空字典来存储学生信息和成绩
students = {}


# 函数用于添加学生信息和成绩
def add_student():
    student_id = input("请输入学生学号: ")
    if student_id in students:
        print("该学号已存在,请重新输入。")
        return
    name = input("请输入学生姓名: ")
    num_subjects = int(input("请输入该学生的科目数量: "))
    subjects = []
    grades = []
    for i in range(num_subjects):
        subject = input(f"请输入第{i + 1}个科目的名称: ")
        subjects.append(subject)
        grade = float(input(f"请输入{subject}的成绩: "))
        grades.append(grade)
    students[student_id] = {'name': name,'subjects': subjects, 'grades': grades}
    print(f"{name}同学的信息已成功添加。")


# 函数用于查询学生成绩
def query_student():
    student_id = input("请输入要查询的学生学号: ")
    if student_id not in students:
        print("该学号不存在,请重新输入。")
        return
    student = students[student_id]
    print(f"学生姓名: {student['name']}")
    for subject, grade in zip(student['subjects'], student['grades']):
        print(f"{subject}: {grade}")


# 函数用于计算所有学生某一科目的平均分
def calculate_average(subject_name):
    total_grade = 0
    num_students = 0
    for student in students.values():
        if subject_name in student['subjects']:
            index = student['subjects'].index(subject_name)
            total_grade += student['grades'][index]
            num_students += 1
    if num_students == 0:
        print(f"没有学生选修{subject_name}科目。")
        return
    average = total_grade / num_students
    print(f"{subject_name}科目的平均成绩为: {average}")


while True:
    print("1. 添加学生信息和成绩")
    print("2. 查询学生成绩")
    print("3. 计算某科目平均分")
    print("4. 退出系统")
    choice = int(input("请输入你的选择: "))
    if choice == 1:
        add_student()
    elif choice == 2:
        query_student()
    elif choice == 3:
        subject_name = input("请输入要计算平均分的科目名称: ")
        calculate_average(subject_name)
    elif choice == 4:
        break
    else:
        print("无效的选择,请重新输入。")


这个学生成绩管理系统具有以下功能:

  1. 添加学生信息和成绩:用户可以输入学生的学号、姓名、科目数量以及每个科目的名称和成绩,系统将这些信息存储在一个字典中。
  2. 查询学生成绩:通过输入学号,可以查询特定学生的各科成绩。
  3. 计算某科目平均分:输入科目名称后,系统会计算选修该科目的所有学生的平均成绩。
  4. 退出系统:用户可以选择退出成绩管理系统。

请注意,这个系统只是一个简单的示例,如果要用于实际场景,可能需要进一步扩展功能,如数据持久化(将数据保存到文件或数据库中)、更复杂的成绩统计功能等。


http://www.kler.cn/news/353916.html

相关文章:

  • Java爬虫:API接口数据爬取入门详解及示例代码
  • 视频的编解码格式
  • 分享如何网上找饭搭子一起品尝美食,分享快乐,建立深厚友谊
  • Leetcode—1114. 按序打印【简单】(多线程)
  • VR线上展厅:超越时空的沉浸式展览,打造个性化、高效展览新模式
  • el-select 下拉框选项文字过长解决方案
  • Chromium html<script>对应c++接口定义
  • 洗衣店数字化转型:Spring Boot订单管理
  • Web前端高级工程师培训:异步处理专题
  • 基于机器学习与深度学习的贷款批准预测
  • Vue 3 和 Vue 2区别
  • 若依框架中spring security的完整认证流程,及其如何使用自定义用户表进行登录认证,学会轻松实现二开,嘎嘎赚块乾
  • 开发中众多框架的个人理解,Unity设计模式,MVC,MVVM框架
  • 【WebGIS实例】怎么将GCJ02坐标系的经纬度转换为WGS84坐标系?
  • 短视频矩阵源码开发/抖音矩阵系统OEM搭建/短视频源码开发知识分享
  • 第十四届单片机嵌入式蓝桥杯
  • 单一执行和循环执行的例行性工作
  • 【C++11】可变模板参数详解
  • Python RabbitMQ 入门 pika
  • Java之集合介绍