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

下面是使用Python实现学生信息管理系统的完整攻略:

构思

在开始编写代码之前,我们需要先明确这个学生信息管理系统要实现哪些功能。可以考虑以下几个方面:

  1. 添加学生信息
  2. 查询学生信息
  3. 修改学生信息
  4. 删除学生信息

每个学生的信息可能包括姓名、性别、年龄、班级、学号等等。

设计数据结构

在明确功能后,我们需要根据这些需求设计相应的数据结构。可以考虑使用一个列表来保存所有学生的信息,每个学生的信息可以用一个字典来表示。

例如:

# 初始学生列表
students = [
    {"name": "张三", "gender": "男", "age": 18, "class": 1, "id": "1001"},
    {"name": "李四", "gender": "女", "age": 17, "class": 2, "id": "1002"},
    {"name": "王五", "gender": "男", "age": 19, "class": 3, "id": "1003"}
]

实现功能

有了数据结构,我们就可以开始实现各个功能了。下面介绍每个功能的实现方式。

添加学生信息

可以设计一个函数来实现添加学生信息的功能。函数的实现可以分为以下几步:

  1. 提示用户输入要添加的学生信息。
  2. 将输入的学生信息组成一个字典。
  3. 将新的字典添加到学生列表中。

例如:

# 添加学生信息函数
def add_student(students):
    name = input("请输入姓名:")
    gender = input("请输入性别:")
    age = int(input("请输入年龄:"))
    class_id = int(input("请输入班级:"))
    id = input("请输入学号:")

    student = {"name": name, "gender": gender, "age": age, "class": class_id, "id": id}
    students.append(student)
    print("添加成功!")

查询学生信息

查询学生信息可以分为两种情况:查询所有学生的信息和查询某个具体学生的信息。可以分别设计两个函数来实现。

# 查询所有学生信息函数
def query_all_students(students):
    if students:
        print("当前所有学生信息如下:")
        for student in students:
            print(f"姓名:{student['name']},性别:{student['gender']},年龄:{student['age']},班级:{student['class']},学号:{student['id']}")
    else:
        print("当前没有学生信息!")

# 查询某个具体学生信息函数
def query_student_by_id(students):
    id = input("请输入要查询的学生学号:")
    for student in students:
        if student['id'] == id:
            print(f"姓名:{student['name']},性别:{student['gender']},年龄:{student['age']},班级:{student['class']},学号:{student['id']}")
            break
    else:
        print("未找到该学生信息!")

修改学生信息

修改学生信息可以分为两步:

  1. 先查询到要修改的学生信息。
  2. 修改该学生的信息。

例如:

# 修改学生信息函数
def modify_student(students):
    id = input("请输入要修改的学生学号:")
    for student in students:
        if student['id'] == id:
            print(f"当前该学生的信息如下:姓名:{student['name']},性别:{student['gender']},年龄:{student['age']},班级:{student['class']},学号:{student['id']}")
            student['name'] = input("请输入新的姓名:")
            student['gender'] = input("请输入新的性别:")
            student['age'] = int(input("请输入新的年龄:"))
            student['class'] = int(input("请输入新的班级:"))
            student['id'] = input("请输入新的学号:")
            print("修改成功!")
            break
    else:
        print("未找到该学生信息!")

删除学生信息

删除学生信息可以先查询到要删除的学生,再将其从列表中删除。

例如:

# 删除学生信息函数
def delete_student(students):
    id = input("请输入要删除的学生学号:")
    for student in students:
        if student['id'] == id:
            students.remove(student)
            print("删除成功!")
            break
    else:
        print("未找到该学生信息!")

示例演示

下面给出两个示例,演示如何使用上述函数实现学生信息管理系统。

示例1

在该示例中,我们先查询当前所有学生的信息,然后向系统中添加一个新的学生,接着查询刚刚添加的学生信息,再修改该学生信息,最后再次查询当前所有学生信息并删除刚刚添加的学生。

# 示例1
students = [
    {"name": "张三", "gender": "男", "age": 18, "class": 1, "id": "1001"},
    {"name": "李四", "gender": "女", "age": 17, "class": 2, "id": "1002"},
    {"name": "王五", "gender": "男", "age": 19, "class": 3, "id": "1003"}
]

query_all_students(students)
add_student(students)
query_student_by_id(students)
modify_student(students)
query_all_students(students)
delete_student(students)
query_all_students(students)

运行上述代码,输出结果如下:

当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
请输入姓名:赵六
请输入性别:男
请输入年龄:20
请输入班级:1
请输入学号:1004
添加成功!
请输入要查询的学生学号:1004
姓名:赵六,性别:男,年龄:20,班级:1,学号:1004
请输入要修改的学生学号:1004
当前该学生的信息如下:姓名:赵六,性别:男,年龄:20,班级:1,学号:1004
请输入新的姓名:赵四
请输入新的性别:男
请输入新的年龄:19
请输入新的班级:2
请输入新的学号:1005
修改成功!
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
姓名:赵四,性别:男,年龄:19,班级:2,学号:1005
请输入要删除的学生学号:1005
删除成功!
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003

示例2

在该示例中,我们先创建一个空的学生列表,然后查询当前所有学生的信息(此时应输出"当前没有学生信息!"),接着向系统中添加三个学生,查询某个具体学生的信息,再次查询当前所有学生信息并删除一个学生。

# 示例2
students = []

query_all_students(students)
add_student(students)
add_student(students)
add_student(students)
query_student_by_id(students)
query_all_students(students)
delete_student(students)
query_all_students(students)

运行上述代码,输出结果如下:

当前没有学生信息!
请输入姓名:张三
请输入性别:男
请输入年龄:18
请输入班级:1
请输入学号:1001
添加成功!
请输入姓名:李四
请输入性别:女
请输入年龄:17
请输入班级:2
请输入学号:1002
添加成功!
请输入姓名:王五
请输入性别:男
请输入年龄:19
请输入班级:3
请输入学号:1003
添加成功!
请输入要查询的学生学号:1002
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:李四,性别:女,年龄:17,班级:2,学号:1002
姓名:王五,性别:男,年龄:19,班级:3,学号:1003
请输入要删除的学生学号:1002
删除成功!
当前所有学生信息如下:
姓名:张三,性别:男,年龄:18,班级:1,学号:1001
姓名:王五,性别:男,年龄:19,班级:3,学号:1003

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

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

相关文章

  • 在opencv python中使用级联分类器进行人脸检测

    【问题标题】:Face detection throws error: !empty() in function cv::CascadeClassifier::detectMultiScale在opencv python中使用级联分类器进行人脸检测 【发布时间】:2023-04-08 00:49:01 【问题描述】: 我正在使用内置的级联分类器进行人脸检测。…

    Python开发 2023年4月8日
    00
  • python简单猜数游戏实例

    Python简单猜数游戏实例是一个非常基础的练手项目,适合初学者们锻炼自己的逻辑思维和对Python的掌握程度。下面就来详细讲解一下这个游戏的具体攻略。 游戏规则 在这个游戏中,程序会生成一个1-100之间的随机数,玩家需要通过输入数字的方式来猜出这个随机数。每次猜测都会告知玩家猜测的数字是偏大还是偏小,玩家可以通过这些提示来逐步缩小猜测范围,直到猜测到正确…

    python 2023年6月3日
    00
  • python-opencv如何读取图片及尺寸修改

    下面是详细的攻略: 1. 安装OpenCV 首先,我们需要安装OpenCV模块,可以通过以下命令进行安装: pip install opencv-python 安装完成后,就可以开始使用OpenCV模块。 2. 读取图片 要读取图片,可以使用OpenCV中的imread()函数。该函数的语法如下: img = cv2.imread(path, flag) 其…

    python 2023年5月18日
    00
  • Python 实现国产SM3加密算法的示例代码

    首先,为了实现国产SM3加密算法,我们需要先了解该算法的基本原理和步骤。SM3算法是一种哈希加密算法,其基本步骤包括填充、消息扩展、压缩和输出。具体步骤如下: 在消息的末尾进行填充,使得消息的总长度为512-bit的整数倍。 对填充后的消息进行分块,每个块的大小为512-bit。 对分块后的消息进行消息扩展,得到扩展后的消息。 对扩展后的消息进行压缩,得到压…

    python 2023年6月3日
    00
  • python函数运行内存时间等性能检测工具

    Python函数的性能检测是开发中非常重要的一环,它可以帮助我们了解程序的瓶颈、优化代码、提高代码的运行效率。Python提供了多种检测工具,包括本地的模块和第三方库。 1. Python自带的模块 1.1 time模块 time模块提供了很多函数来处理时间相关的任务,其中包括计时功能。time模块提供了两个函数,分别是time()和clock()。 tim…

    python 2023年6月2日
    00
  • 基于Python实现成语填空游戏的示例代码

    基于Python实现成语填空游戏的示例代码,主要分为以下几个步骤: 第一步:准备游戏基础数据 首先,要准备好成语词典数据,可以从网络上下载相关的数据文件,例如JSON格式的成语词典文件;其次,要将成语词典数据加载到程序中,可以采用Python标准库中的json模块读取JSON文件,并将读取到的数据转换成Python对象,例如列表或字典。代码示例如下: imp…

    python 2023年6月13日
    00
  • python 使用tkinter+you-get实现视频下载器

    Python 使用 tkinter + you-get 实现视频下载器 1. 简介 本项目使用 Python 语言编写,采用 tkinter 模块作为 GUI 界面,you-get 模块用于下载视频。该视频下载器可以提供给用户一个简单易用的界面,让用户可以通过输入视频链接地址,选择下载视频的质量,方便快捷地下载所需视频。 2. 环境准备 在使用本项目前,需要…

    python 2023年6月2日
    00
  • python使用requests库提交multipart/form-data请求的方法详解

    以下是关于Python使用requests库提交multipart/form-data请求的方法详解的攻略: Python使用requests库提交multipart/form-data请求的方法详解 在Python中,使用requests库可以方便地提交multipart/form-data请求。multipart/form-data是一种常见的HTTP请…

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