python实现简单学生信息管理系统

Python实现简单学生信息管理系统

概述

本文旨在讲解如何使用Python实现简单的学生信息管理系统。通过本文的学习,你将会了解如何使用Python实现一个基本的CRUD(Create、Read、Update、Delete)操作,并通过文件存储信息,实现信息的持久化。

实现步骤

1. 确定需求

我们的学生信息管理系统需要实现以下功能:

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

2. 创建文件

我们需要创建以下几个文件:

  • student.py:定义学生信息类
  • menu.py:实现菜单功能
  • main.py:程序入口

3. 编写student.py

首先我们需要定义学生信息的类,包含以下信息:

  • 姓名
  • 学号
  • 年龄
  • 性别
class Student:
    def __init__(self, name, id, age, sex):
        self.name = name
        self.id = id
        self.age = age
        self.sex = sex

4. 编写menu.py

我们需要使用菜单,方便用户操作。菜单需要实现以下功能:

  • 显示菜单选项
  • 接收用户选项
  • 根据用户选项执行对应的操作
def print_menu():
    print("=" * 20)
    print("学生信息管理系统")
    print("1. 添加学生信息")
    print("2. 查询学生信息")
    print("3. 修改学生信息")
    print("4. 删除学生信息")
    print("0. 退出系统")
    print("=" * 20)

def get_choice():
    return input("请输入您需要进行的操作:")

def add_student(students):
    name = input("请输入学生姓名:")
    id = input("请输入学生学号:")
    age = input("请输入学生年龄:")
    sex = input("请输入学生性别:")
    student = Student(name, id, age, sex)
    students.append(student)
    print("添加成功!")

def query_student(students):
    name = input("请输入学生姓名:")
    for student in students:
        if student.name == name:
            print(f"学生姓名:{student.name}")
            print(f"学生学号:{student.id}")
            print(f"学生年龄:{student.age}")
            print(f"学生性别:{student.sex}")
            return
    print("该学生不存在!")

def update_student(students):
    name = input("请输入学生姓名:")
    for student in students:
        if student.name == name:
            student.id = input("请输入学生学号:")
            student.age = input("请输入学生年龄:")
            student.sex = input("请输入学生性别:")
            print("修改成功!")
            return
    print("该学生不存在!")

def delete_student(students):
    name = input("请输入学生姓名:")
    for index, student in enumerate(students):
        if student.name == name:
            students.pop(index)
            print("删除成功!")
            return
    print("该学生不存在!")

5. 编写main.py

最后,我们需要实现程序的入口,即main.py文件。在该文件中,我们需要实现以下操作:

  • 加载已有学生信息
  • 进入循环,显示菜单选项,根据用户选项执行对应的操作
from student import *
from menu import *
import os

def load_students():
    students = []
    if not os.path.exists("students.txt"):
        return students
    with open("students.txt", "r", encoding="utf-8") as file:
        for line in file:
            item = line.strip().split(",")
            student = Student(item[0], item[1], item[2], item[3])
            students.append(student)
    return students

def save_students(students):
    with open("students.txt", "w", encoding="utf-8") as file:
        for student in students:
            file.write(f"{student.name},{student.id},{student.age},{student.sex}\n")

def main():
    students = load_students()
    choice = ""
    while choice != "0":
        print_menu()
        choice = get_choice()
        if choice == "1":
            add_student(students)
            save_students(students)
        elif choice == "2":
            query_student(students)
        elif choice == "3":
            update_student(students)
            save_students(students)
        elif choice == "4":
            delete_student(students)
            save_students(students)
        elif choice == "0":
            print("谢谢使用!")
        else:
            print("输入非法,请重新输入!")

if __name__ == "__main__":
    main()

示例说明

添加学生信息

学生信息管理系统
1. 添加学生信息
2. 查询学生信息
3. 修改学生信息
4. 删除学生信息
0. 退出系统
====================
请输入您需要进行的操作:1
请输入学生姓名:张三
请输入学生学号:001
请输入学生年龄:20
请输入学生性别:男
添加成功!
请输入您需要进行的操作:0
谢谢使用!

查询学生信息

学生信息管理系统
1. 添加学生信息
2. 查询学生信息
3. 修改学生信息
4. 删除学生信息
0. 退出系统
====================
请输入您需要进行的操作:2
请输入学生姓名:张三
学生姓名:张三
学生学号:001
学生年龄:20
学生性别:男
请输入您需要进行的操作:0
谢谢使用!

以上是本文的Python实现简单学生信息管理系统的攻略,希望对你有所帮助。

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

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

相关文章

  • 关于Python中空格字符串处理的技巧总结

    请允许我来为大家详细讲解关于Python中空格字符串处理的技巧总结。 标题 一、strip方法 Python中的strip()方法可以用于去除字符串两侧的空格,语法如下: str.strip([chars]) 其中,chars参数可选,用于指定要去除的字符,如果不传入chars参数,则默认删除包括空格(包括换行、制表符等)在内的所有空字符。 下面,我们举两个…

    python 2023年6月3日
    00
  • python 判断字符串当中是否包含字符(str.contain)

    关于如何判断Python字符串中是否包含某个字符的问题,可以使用Python内置的字符串方法 str.contain()来实现。下面是具体的攻略: 1. 判断单个字符是否在字符串中 可以使用str.contain()方法来判断一个字符是否存在于一个字符串中,如果该字符串中包含该字符,返回值为True,如果不包含,则返回值为False。 示例如下所示: # 判…

    python 2023年6月5日
    00
  • python用函数创造字典的实例讲解

    下面是关于“Python用函数创建字典的实例讲解”的完整攻略,具体过程如下: 1. 了解字典数据结构 在Python中,字典是一种非常常见的数据结构,其结构类似于Java和其他编程语言中的“Map”或“字典”。字典是由键和值组成的集合,其中每个键都必须是唯一的。 2. 使用字典字面量创建字典 Python中创建字典最简单的方法是使用字典字面量。您可以使用大括…

    python 2023年5月13日
    00
  • Python使用百度api做人脸对比的方法

    下面我将为你详细讲解“Python使用百度api做人脸对比的方法”的完整攻略。 1. 准备工作 首先需要在百度AI开放平台注册账号,并申请到人脸识别服务。获取到应用的APP ID、API Key、Secret Key三个参数,以下用APP_ID、API_KEY、SECRET_KEY表示。 接着需要安装Python SDK和相关依赖,在命令行中运行以下命令即可…

    python 2023年6月6日
    00
  • Python正则表达式 r'(.*) are (.*?) .*’的深入理解

    让我来详细讲解一下关于Python正则表达式 r'(.) are (.?) .*’的深入理解。 首先,我们需要了解正则表达式是什么。正则表达式是一种提供给计算机使用的字符串匹配模式,是一种强大的文本处理工具。它可以用来快速地匹配、验证、搜索和替换文本中的内容,较之手动处理文本的方式更为高效、便捷。 而Python正则表达式 r'(.) are (.?) .*…

    python 2023年6月3日
    00
  • python简单获取数组元素个数的方法

    当我们在使用Python编程时,经常会遇到需要获取数组中元素的数量的情况。这里列举了三种获取数组元素数量的方法。 方法1: len()函数 在Python中,可以使用内置函数len()来获取数组/列表的元素个数。 # 示例1:使用len()函数获取列表的元素个数 my_list = [1, 2, 3, 4, 5] list_length = len(my_l…

    python 2023年6月5日
    00
  • Python实现功能全面的学生管理系统

    Python实现功能全面的学生管理系统攻略 系统要求分析 在开发学生管理系统前,我们需要明确该系统所需实现的功能,以及应用的开发环境和工具。 功能需求 一般情况下,学生管理系统需要实现以下功能: 记录学生个人信息,例如姓名、性别、年龄、籍贯、入学日期等; 班级管理,包括学生分组、调整班级等; 成绩管理,包括添加、修改、删除和查看成绩等; 综合查询,包括按年级…

    python 2023年5月30日
    00
  • Python如何脚本过滤文件中的注释

    在Python中,我们可以使用正则表达式或字符串操作来过滤文件中的注释。以下是Python如何脚本过滤文件中的注释的完整攻略: 使用正则表达式过滤注释 在Python中,我们可以使用正则表达式来过滤文件中的注释。以下是使用正则表达式过滤注释的示例代码: import re with open(‘example.py’, ‘r’) as f: content …

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