# python-student-management **Repository Path**: Dracowyn/python-student-management ## Basic Information - **Project Name**: python-student-management - **Description**: Python+SQLite学生信息管理系统 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-07-01 - **Last Updated**: 2025-07-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 学生信息管理系统 ## 📚 教师教学指南 > **重要提示:** 本项目专门为Python教学设计,包含详细的教学注释和学习指导。 ### 📖 建议学习顺序 ``` 1️⃣ student.py ← 面向对象编程基础 (⭐⭐) 2️⃣ database.py ← 数据库操作入门 (⭐⭐⭐) 3️⃣ student_service.py ← 业务逻辑设计 (⭐⭐⭐⭐) 4️⃣ main.py ← 系统集成实践 (⭐⭐⭐⭐⭐) ``` ### 🎓 教学要点 - **模块化设计**:理解分层架构的重要性 - **面向对象编程**:类、方法、封装等概念 - **数据库操作**:SQL语句、事务管理 - **用户界面设计**:命令行界面的交互设计 --- ## 项目简介 基于Python和SQLite数据库的学生信息管理系统。 本系统提供了一个简单易用的命令行界面,支持添加、查询、修改、删除学生信息,并提供统计功能。 本系统无需安装第三方依赖包,只使用Python标准库。 ## 功能特点 - ✅ 添加学生信息 - ✅ 查询学生信息(支持按学号和姓名查询) - ✅ 修改学生信息 - ✅ 删除学生信息 - ✅ 显示所有学生信息 - ✅ 统计信息(总数、性别分布、专业分布) - ✅ 友好的命令行界面 ## 系统要求 - Python 3.6 或更高版本 - 无需安装第三方依赖包 ## 文件结构 ``` main.py # 【第4步学习】主程序入口,提供用户界面 (⭐⭐⭐⭐⭐) student.py # 【第1步学习】学生类定义,面向对象基础 (⭐⭐) database.py # 【第2步学习】数据库操作模块,SQL入门 (⭐⭐⭐) student_service.py # 【第3步学习】业务逻辑层,架构设计 (⭐⭐⭐⭐) students.db # SQLite数据库文件(运行后自动创建) README.md # 项目说明文档 # 教学辅助文件 add_sample_data.py # 添加示例数据 test_system.py # 系统测试脚本 ``` ### 📐 系统架构 ``` ┌─────────────────────────────────────┐ │ 表示层 (main.py) │ ← 用户界面,程序入口 ├─────────────────────────────────────┤ │ 业务逻辑层 (service.py) │ ← 业务处理,核心逻辑 ├─────────────────────────────────────┤ │ 数据访问层 (database.py) │ ← 数据库操作 ├─────────────────────────────────────┤ │ 数据模型层 (student.py) │ ← 数据结构定义 └─────────────────────────────────────┘ ``` ## 数据库设计 学生信息表 (students): - id: 主键,自动递增 - student_id: 学号,唯一约束 - name: 姓名 - age: 年龄 - gender: 性别 - major: 专业 - class_name: 班级 - phone: 电话(可选) - email: 邮箱(可选) - created_time: 创建时间 ## 运行方式 1. 确保安装了Python 3.6或更高版本 2. 进入项目目录 3. 运行主程序: ```bash python main.py ``` ## 添加示例数据 如果需要添加一些示例数据,可以运行以下脚本: ```bash python add_sample_data.py ``` ## 系统测试 ```bash python test_system.py ``` ## 使用说明 1. **添加学生**: 输入完整的学生信息,系统会自动验证数据有效性 2. **查询学生**: 可以按学号精确查询或按姓名模糊查询 3. **修改学生**: 输入学号找到学生后,重新输入所有信息进行修改 4. **删除学生**: 输入学号找到学生后,确认删除 5. **显示所有学生**: 以表格形式显示所有学生信息 6. **统计信息**: 显示学生总数、性别分布、专业分布等统计数据 ## 系统特色 1. **清屏功能**: 支持Windows和Linux/macOS的清屏操作 2. **模糊查询**: 姓名查询支持部分匹配 3. **表格显示**: 美观的表格形式展示数据 4. **操作确认**: 删除操作需要用户确认 5. **友好提示**: 详细的操作提示信息