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

用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 下划线、双下划线的涵义

    Python 中下划线和双下划线是有特殊含义的,使用它们可以实现一些特殊的功能。 单下划线 _ 在 Python 中,单下划线 _ 常用于以下几种情况: 用于解决名称冲突 如果有一个变量名和 Python 中的关键字重名,但你又不想改变该变量名,就可以在名称前加上一个下划线 _,以避免与关键字冲突,例如: if_ = 5 # `if` 是关键字,加上下划线来…

    python-answer 2023年3月25日
    00
  • python使用append合并两个数组的方法

    在Python中,可以使用append()方法将一个数组添加到另一个数组的末尾,从而实现合并两个数组的操作。下面是Python使用append()合并两个数组的完整攻略: 方法一:使用for循环遍历数组 可以使用循环遍历一个数组,然后将每个元素添加到另一个数组的末尾。下面是一个示例: # 示例1:使用for循环遍历数组合并两个数组 arr1 = [1, 2,…

    python 2023年5月13日
    00
  • Python回调函数用法实例详解

    Python回调函数用法实例详解 什么是回调函数? 回调函数(callback)是一种双向调用的技术,指通过函数参数将函数的指针传递给其他函数,实现对函数间的调用。调用者按预先约定的流程将函数指针作为参数传入供被调用者调用。 在Python中,回调函数通常传递的是一个可调用对象callable,可以是函数、方法或者类的实例等等。 回调函数的用途 回调函数常常…

    python 2023年6月3日
    00
  • python感知机实现代码

    接下来将为大家详细讲解“Python感知机实现代码”的完整攻略。 什么是感知机 感知机是二元线性分类模型,输入是向量,输出是标志所属的二元分类,常用于二元分类、多元分类和回归分析等领域。 感知机实现代码攻略 实现步骤 以下是Python实现感知机分类的步骤: 定义感知机模型的输入与输出维度。 定义感知机模型的参数:权重向量和偏置。 进行前向传播,计算感知机模…

    python 2023年5月19日
    00
  • Python爬取城市租房信息实战分享

    Python爬取城市租房信息实战分享 1. 概述 本篇文章将介绍如何使用Python语言爬取城市租房信息的过程。本文使用的是Python 3.x版本和requests库、BeautifulSoup库和pandas库等。 具体的操作包括向目标网站发送HTTP请求,解析响应内容,提取目标数据和存储数据等步骤。 2. 准备工作 在开始爬虫之前,需要安装相应的库和软…

    python 2023年5月14日
    00
  • 对Python实现累加函数的方法详解

    对Python实现累加函数的方法详解 累加函数是一个经典的编程问题,可以用于统计数字的总和,或者对列表中的元素进行加和操作等等。在这里我们将详细讲解Python实现累加函数的多种方法。 方法一:使用for循环 使用for循环是实现累加函数的最常见方法之一。只需在for循环中使用一个累加器,每次循环都加上当前数字即可。 def accumulate1(nums…

    python 2023年5月19日
    00
  • 遗传算法python版

    下面是关于“遗传算法Python版”的详细讲解。 1. 遗传算法的基本原理 遗传算法是一种基于自然选择和遗传学原理的优化算法,它通过模拟生物进化过程来寻找最优解。遗传算法的基本流程如下: 初始化种群:随机生成一组初始解作为种群。 选择:根据适应度函数选择一部分优秀的个体作为父代。 交叉:将父代个进行交叉操作,生成新的子代个体。 变异:对子代个体进行变异操作,…

    python 2023年5月13日
    00
  • 关于Python Tkinter Button控件command传参问题的解决方式

    如何在Tkinter中的button控件上使用command传参是一个常见的问题,下面是具体的解决方法: 标准的Button控件 首先我们来看一下标准的Button控件,它的command参数并不能直接传参,但是可以通过lambda表达式来传递参数。示例代码如下: from tkinter import * def print_name(name): pri…

    python 2023年6月13日
    00
合作推广
合作推广
分享本页
返回顶部