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

使用Python实现学生管理系统

文章目录

    • 1. 系统概述
    • 2. 系统功能
    • 3. 实现细节
      • 3.1 初始化学生列表
      • 3.2 添加学生
      • 3.3 显示所有学生
      • 3.4 查找学生
      • 3.5 删除学生
      • 3.6 主菜单
    • 4. 运行系统

在本文中,我们将使用Python编程语言来开发一个简单的学生管理系统。该系统将允许用户执行基本的学生信息管理操作,如添加学生、显示所有学生、查找学生和删除学生。

1. 系统概述

我们的学生管理系统将基于控制台应用,不使用图形用户界面(GUI)。系统将使用列表(list)来存储学生信息,每个学生信息将由一个字典(dict)表示,包含学生的姓名(name)、学号(id)和成绩(score)。

2. 系统功能

  • 添加学生(Add Student):允许用户输入新学生的姓名、学号和成绩,并将其添加到学生列表中。
  • 显示所有学生(Show All Students):显示学生列表中的所有学生信息。
  • 查找学生(Find Student):允许用户通过学号查找学生信息。
  • 删除学生(Delete Student):允许用户通过学号删除学生信息。

3. 实现细节

3.1 初始化学生列表

首先,我们需要一个空的学生列表来存储学生信息。

students = []

3.2 添加学生

我们将定义一个函数add_student来添加学生信息。

def add_student():name = input("请输入学生姓名: ")id = input("请输入学生学号: ")score = float(input("请输入学生成绩: "))student = {'name': name, 'id': id, 'score': score}students.append(student)print("学生信息已添加。")

3.3 显示所有学生

接下来,我们定义一个函数show_all_students来显示所有学生的信息。

def show_all_students():for student in students:print(f"姓名: {student['name']}, 学号: {student['id']}, 成绩: {student['score']}")print("所有学生信息已显示。")

3.4 查找学生

我们定义一个函数find_student,它允许用户通过学号来查找学生信息。

def find_student():id_to_find = input("请输入要查找的学号: ")for student in students:if student['id'] == id_to_find:print(f"姓名: {student['name']}, 学号: {student['id']}, 成绩: {student['score']}")returnprint("未找到该学生。")

3.5 删除学生

最后,我们定义一个函数delete_student,它允许用户通过学号来删除学生信息。

def delete_student():id_to_delete = input("请输入要删除的学生学号: ")for i in range(len(students) - 1, -1, -1):if students[i]['id'] == id_to_delete:del students[i]print("学生信息已删除。")returnprint("未找到该学生。")

3.6 主菜单

为了使用户能够方便地选择功能,我们还需要一个主菜单函数main_menu

def main_menu():while True:print("""学生管理系统1. 添加学生2. 显示所有学生3. 查找学生4. 删除学生5. 退出""")choice = input("请选择操作: ")if choice == '1':add_student()elif choice == '2':show_all_students()elif choice == '3':find_student()elif choice == '4':delete_student()elif choice == '5':print("谢谢使用,再见!")breakelse:print("无效选择,请重新输入。")if __name__ == "__main__":main_menu()

4. 运行系统

现在,你可以运行这个Python脚本,并根据提示进行操作。你可以添加一些学生信息,然后显示、查找或删除它们。

http://www.lryc.cn/news/388499.html

相关文章:

  • 【嵌入式DIY实例】- LCD ST7735显示DHT11传感器数据
  • 基于Tools体验NLP编程的魅力
  • 强化学习-3深度学习基础
  • SOC模块LoRa-STM32WLE5有哪些值得关注
  • CSS中的display属性:布局控制的关键
  • 【Spring Boot AOP通知顺序】
  • k8s是什么
  • 使用雪花算法(Snowflake Algorithm)在Python中生成唯一ID
  • Docker期末复习
  • DP:子数组问题
  • [Day 20] 區塊鏈與人工智能的聯動應用:理論、技術與實踐
  • Handling `nil` Values in `NSDictionary` in Objective-C
  • 【深入浅出 】——【Python 字典】——【详解】
  • 开发RpcProvider的发布服务(NotifyService)
  • Suno: AI音乐创作的新时代
  • 六西格玛项目实战:数据驱动,手机PCM率直线下降
  • 数据结构递归(01)汉诺塔经典问题
  • 计算机专业课面试常见问题-计算机网络篇
  • HarmonyOS ArkUi ArkWeb加载不出网页问题踩坑
  • 微信换手机号了怎么绑定新手机号?
  • 64.WEB渗透测试-信息收集- WAF、框架组件识别(4)
  • java.lang.LinkageError: 链接错误的正确解决方法,亲测有效,嘿嘿,有效
  • python最基础
  • Python学习路线图(2024最新版)
  • 66、基于长短期记忆 (LSTM) 网络对序列数据进行分类
  • RabbitMQ消息可靠性等机制详解(精细版三)
  • 88888
  • 深度学习之激活函数
  • OpenStack开源虚拟化平台(一)
  • C++ | Leetcode C++题解之第207题课程表