用python实现学生信息管理系统

yizhihongxing

用Python实现学生信息管理系统

概述

本文将讲述如何用Python实现一个简易的学生信息管理系统。

该系统包括以下功能:

  • 添加学生信息
  • 删除学生信息
  • 修改学生信息
  • 查询学生信息

数据结构

我们可以用一个列表来存储所有学生的信息,列表中的每个元素都代表一个学生的信息,包括姓名、性别、年龄、学号等。

例如:

students = [
    {"name": "Tom", "gender": "Male", "age": 18, "student_id": "1001"},
    {"name": "Jerry", "gender": "Female", "age": 19, "student_id": "1002"},
    {"name": "Alice", "gender": "Female", "age": 20, "student_id": "1003"},
    {"name": "Bob", "gender": "Male", "age": 21, "student_id": "1004"}
]

添加学生信息

要添加一个学生的信息,可以让用户输入学生的姓名、性别、年龄、学号等信息,然后创建一个字典,将这些信息存储到字典中,最后将字典添加到列表中即可。

def add_student():
    name = input("Please enter student's name:")
    gender = input("Please enter student's gender:")
    age = input("Please enter student's age:")
    student_id = input("Please enter student's ID:")
    student = {"name": name, "gender": gender, "age": age, "student_id": student_id}
    students.append(student)
    print("Student added successfully!")

删除学生信息

要删除一个学生的信息,可以让用户输入学生的学号,然后遍历列表,找到对应学号的学生信息,将其删除即可。

def delete_student():
    student_id = input("Please enter student's ID:")
    for student in students:
        if student["student_id"] == student_id:
            students.remove(student)
            print("Student deleted successfully!")
            return
    print("Student not found!")

修改学生信息

要修改一个学生的信息,可以让用户输入学生的学号,然后遍历列表,找到对应学号的学生信息,让用户输入要修改的信息,然后更新字典即可。

def modify_student():
    student_id = input("Please enter student's ID:")
    for student in students:
        if student["student_id"] == student_id:
            student["name"] = input("Please enter student's name:")
            student["gender"] = input("Please enter student's gender:")
            student["age"] = input("Please enter student's age:")
            print("Student modified successfully!")
            return
    print("Student not found!")

查询学生信息

要查询学生的信息,可以让用户输入学生的姓名或学号,然后遍历列表,找到对应的学生信息,将其显示出来。

def search_student():
    keyword = input("Please enter student's name or ID:")
    for student in students:
        if student["name"] == keyword or student["student_id"] == keyword:
            print(f"Name: {student['name']}, Gender: {student['gender']}, Age: {student['age']}, ID: {student['student_id']}")
            return
    print("Student not found!")

完整示例

以下是完整代码示例:

students = [
    {"name": "Tom", "gender": "Male", "age": 18, "student_id": "1001"},
    {"name": "Jerry", "gender": "Female", "age": 19, "student_id": "1002"},
    {"name": "Alice", "gender": "Female", "age": 20, "student_id": "1003"},
    {"name": "Bob", "gender": "Male", "age": 21, "student_id": "1004"}
]

def add_student():
    name = input("Please enter student's name:")
    gender = input("Please enter student's gender:")
    age = input("Please enter student's age:")
    student_id = input("Please enter student's ID:")
    student = {"name": name, "gender": gender, "age": age, "student_id": student_id}
    students.append(student)
    print("Student added successfully!")

def delete_student():
    student_id = input("Please enter student's ID:")
    for student in students:
        if student["student_id"] == student_id:
            students.remove(student)
            print("Student deleted successfully!")
            return
    print("Student not found!")

def modify_student():
    student_id = input("Please enter student's ID:")
    for student in students:
        if student["student_id"] == student_id:
            student["name"] = input("Please enter student's name:")
            student["gender"] = input("Please enter student's gender:")
            student["age"] = input("Please enter student's age:")
            print("Student modified successfully!")
            return
    print("Student not found!")

def search_student():
    keyword = input("Please enter student's name or ID:")
    for student in students:
        if student["name"] == keyword or student["student_id"] == keyword:
            print(f"Name: {student['name']}, Gender: {student['gender']}, Age: {student['age']}, ID: {student['student_id']}")
            return
    print("Student not found!")

while True:
    print("Please select an operation:")
    print("1. Add student")
    print("2. Delete student")
    print("3. Modify student")
    print("4. Search student")
    print("5. Exit")
    choice = int(input())
    if choice == 1:
        add_student()
    elif choice == 2:
        delete_student()
    elif choice == 3:
        modify_student()
    elif choice == 4:
        search_student()
    elif choice == 5:
        break
    else:
        print("Invalid choice, please try again.")

示例说明

示例1:添加学生信息

  1. 用户选择添加学生信息功能
  2. 用户输入学生信息,例如:姓名:张三,性别:男,年龄:18,学号:1001
  3. 系统提示学生添加成功
  4. 查看学生列表,会发现列表中新增了一条学生信息:
{"name": "张三", "gender": "男", "age": "18", "student_id": "1001"}

示例2:查询学生信息

  1. 用户选择查询学生信息功能
  2. 用户输入学生姓名或学号,例如:张三
  3. 系统会在列表中查找姓名为张三的学生,如果找到则会显示学生的详细信息:
Name: 张三, Gender: 男, Age: 18, ID: 1001

如果找不到则会提示学生不存在。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:用python实现学生信息管理系统 - Python技术站

(0)
上一篇 2023年5月19日
下一篇 2023年5月19日

相关文章

  • 使用Python将Exception异常错误堆栈信息写入日志文件

    下面是使用Python将Exception异常错误堆栈信息写入日志文件的攻略。 1. 安装 logging 模块 Python 自带 logging 模块,不需要单独安装。 2. 配置 logging 配置 logging 时需要设置日志级别、日志格式、以及输出方式。下面是一个简单的配置示例: import logging logging.basicConf…

    python 2023年5月13日
    00
  • 一文带你玩转MySQL获取时间和格式转换各类操作方法详解

    一文带你玩转MySQL获取时间和格式转换各类操作方法详解 获取当前日期/时间 获取当前日期 获取当前日期可以使用函数CURDATE(),该函数返回的是当前日期的字符串。下面是一个示例: SELECT CURDATE(); 输出如下所示: CURDATE() 2021-08-03 获取当前时间 获取当前时间可以使用函数CURTIME(),该函数返回的是当前时间…

    python 2023年6月2日
    00
  • matplotlib图例、标签、坐标轴刻度的字体设置方式

    下面是matplotlib图例、标签、坐标轴刻度的字体设置方式的完整攻略: 设置图例字体 在matplotlib中,可以通过legend()函数设置图例。要设置图例的字体,可以通过prop参数传递一个font对象,该对象控制图例中的字体属性。 import matplotlib.pyplot as plt import matplotlib.font_man…

    python 2023年6月6日
    00
  • pycharm软件实现设置自动保存操作

    PyCharm是一款用于Python开发的IDE(Integrated Development Environment),提供丰富的功能和工具。它的自动保存功能可以帮助我们在忘记保存时避免丢失代码。以下是实现PyCharm自动保存的攻略: 步骤1:在PyCharm中打开设置面板 首先,在PyCharm的菜单栏中依次选择“File”->“Settings…

    python 2023年5月19日
    00
  • 详解用Python pillow 创建和保存GIF动画

    以下是用Python pillow创建和保存GIF动画的完整攻略: 步骤一:导入必要的库 在创建和保存GIF动画之前,我们需要先导入Pillow和一些其他必要的库,具体代码如下所示: from PIL import Image, ImageDraw, ImageFont import random 步骤二:生成帧图像 生成GIF动画最重要的一步就是生成帧图像…

    python-answer 2023年3月25日
    00
  • Python学习之自定义异常详解

    以下是关于Python学习之自定义异常详解的完整攻略: 问题描述 在Python中,我们可以自定义异常来处理特定的错误或异常情况。自定义异常可以让我们更好地控制程序的流程和错误处理。但是,自定义异常需要遵循一定的规则和约定。 解决方法 可以使用以下步骤自定义异常: 定义异常类。 定义一个继承自Exception类的异常类。可以在异常类中添加一些属性或方法,以…

    python 2023年5月13日
    00
  • 如何在Python中将字符串转换为数组详解

    如何在Python中将字符串转换为数组?在Python中,字符串可以通过多种方式转换为数组,以下是其中的几种方法: 方法一: 使用split()方法分隔字符串 在Python中,字符串可以使用split()方法分隔成数组。该方法将返回一个字符串列表,其中每个元素都是原始字符串中的一个分隔符分隔的子字符串。 string = "Hello,World…

    python 2023年6月6日
    00
  • 使用带有 Python 模拟的生成器来复制服务器响应

    【问题标题】:Using a generator with Python mock to replicate server responses使用带有 Python 模拟的生成器来复制服务器响应 【发布时间】:2023-04-03 05:32:01 【问题描述】: 我想使用一个列表(转换为生成器)来模拟我的 API 调用(使用 unittest.mock)。…

    Python开发 2023年4月8日
    00
合作推广
合作推广
分享本页
返回顶部