diff --git a/README.md b/README.md new file mode 100644 index 0000000..4e40f9e --- /dev/null +++ b/README.md @@ -0,0 +1,74 @@ +# 🎓 学生成绩自动排名系统说明文档 + +--- + +## 📘 1. 系统概述 + +学生成绩自动排名系统是一个基于 Python 的图形化界面应用程序,用于从 CSV 文件读取学生成绩,自动排序并可视化展示。该系统界面简洁直观,适合教学使用。 + +--- + +## ✨ 2. 核心功能 + +* ✅ **自动排序**:按照成绩从高到低排列。 +* 🎨 **颜色标注**: + + * 红色:不及格(<60) + * 橙色:及格(60-89) + * 绿色:优秀(>=90) +* 🔍 **搜索功能**:按姓名快速查询学生信息。 +* 📊 **数据可视化**:使用 matplotlib 绘制成绩柱状图。 +* 📈 **统计信息**:显示总人数、平均分、最高分。 +* 🔁 **数据刷新**:支持一键重新加载 CSV 文件。 + +--- + +## 🧰 3. 环境与依赖 + +* Python 3.6 或以上 +* tkinter(Python 标准库) +* matplotlib + +### 使用中国科技大学镜像源安装 matplotlib: + +```bash +pip install matplotlib -i https://pypi.mirrors.ustc.edu.cn/simple/ +``` + +**CSV 格式示例:** + +```csv +姓名,成绩 +张三,85 +李四,90 +王五,100 +``` + +--- + +## 🗂️ 4. 文件结构 + +* `score.csv`:学生成绩数据文件 +* `main.py`:主程序,包含界面与逻辑代码 + +--- + +## ⚙️ 5. 工作流程 + +1. 使用 `csv.DictReader` 读取数据; +2. 根据“成绩”字段降序排序; +3. 使用 `ttk.Treeview` 显示结果表格; +4. 根据成绩范围设置不同颜色标签; +5. 使用 `matplotlib` 嵌入柱状图展示分数分布; +6. 支持“刷新”按钮动态更新界面数据。 + +--- + +## 🚀 6. 可扩展方向 + +* 📤 支持导出成绩报告为 PDF 或 Excel +* 🗃️ 集成 SQLite/MySQL 数据库 +* 🏫 多班级、多科目成绩管理 +* 🔐 用户登录系统(教师 / 学生) + +