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实现Word表格转成Excel表格的示例代码

    下面我会详细讲解Python实现Word表格转成Excel表格的完整实例教程。其中,我们将使用Python的第三方库python-docx和openpyxl来实现。 一、前期准备 在开始转换Word表格之前,我们需要安装以下两个Python库: python-docx:用于读取Word文档中的表格; openpyxl:用于将表格数据写入Excel。 你可以在…

    python 2023年5月13日
    00
  • Python常用编码的区别介绍

    当我们写Python代码时,有多种编码方式可供选择,而不同的编码方式之间也存在一些区别。下面我会逐一讲解常用的三种编码方式,它们分别是ASCII、UTF-8和ISO-8859-1。 ASCII编码 ASCII编码是最早的一种字符编码方式,它使用7个比特位来表示一个字符,总共可以表示128种不同的字符,包括26个英文字母、数字、符号等。 ASCII编码逐渐被淘…

    python 2023年5月20日
    00
  • 浅谈python 中的 type(), dtype(), astype()的区别

    浅谈 Python 中的 type(), dtype(), astype() 的区别 在 Python 中,type(), dtype(), astype() 都是常用的函数,但它们的作用不同。以下是浅谈 Python 中的 type(), dtype(), astype() 的区别的详细介绍。 1. type() type() 函数用于获取变量的类型。以下…

    python 2023年5月15日
    00
  • Selenium+Python自动化测试入门

    Selenium+Python自动化测试入门 简介 Selenium是一个流行的自动化测试工具,它可以在浏览器上模拟多种操作,比如用户输入、点击、滚动等等,还可以获取浏览器中的元素进行断言、检查等等。Selenium的支持范围广泛,包括Chrome、Firefox、Safari等浏览器,而且它的Python库也非常容易使用,对于初学者来说是一个非常友好的选择…

    python 2023年5月19日
    00
  • Elasticsearch py客户端库安装及使用方法解析

    好的。下面我将详细讲解“Elasticsearch py客户端库安装及使用方法解析”的完整攻略,具体内容包括: 安装Elasticsearch py客户端库 连接到Elasticsearch集群 创建Elasticsearch索引 写入数据 查询数据 示例说明 1. 安装Elasticsearch py客户端库 Elasticsearch py客户端库可以通…

    python 2023年6月3日
    00
  • 浅谈python中截取字符函数strip,lstrip,rstrip

    浅谈Python中截取字符函数strip,lstrip,rstrip Python中提供了三种截取字符串的方法:strip、lstrip和rstrip。 strip strip函数可以截取掉字符串两端的指定字符,默认是空格。常用于数据清洗和整理。下面是使用示例: text = ‘ hello ‘ print(text.strip()) # 输出 ‘hello…

    python 2023年6月5日
    00
  • python文件和目录操作方法大全(含实例)

    Python文件和目录操作方法大全(含实例) 这篇文章将介绍使用Python进行文件和目录操作的方法,包括查看、创建、复制、删除文件和目录等操作。同时我们也会提供示例代码,帮助你更好地理解。 查看文件和目录 要查看文件或目录,可以使用Python的os模块。os模块提供了许多函数和常量来访问操作系统功能。 获取当前工作目录 使用os.getcwd()函数可以…

    python 2023年5月30日
    00
  • python基于Tkinter实现人员管理系统

    下面我会详细讲解“Python基于Tkinter实现人员管理系统”的完整攻略,包含以下几个部分: 安装Tkinter Tkinter是Python的标准GUI库,因此不需要额外安装。但如果你发现你的Python没有安装Tkinter库,那么你需要安装它。可以通过以下命令在命令行中安装: sudo apt-get install python3-tk 创建GU…

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