# ttkAnalysis **Repository Path**: wenlife207/ttk-analysis ## Basic Information - **Project Name**: ttkAnalysis - **Description**: 使用tkinter和ttkboostrap、pandas开发的小型成绩分析系统。 - **Primary Language**: Unknown - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2024-04-05 - **Last Updated**: 2024-12-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: 成绩分析, tkinter, ttkbootstrap, pandas, python数据分析 ## README # ttkAnalysis #### 介绍 使用tkinter和ttkboostrap、pandas开发的小型成绩分析系统。 #### 软件架构 软件架构说明 c/s #### 安装教程 1. python运行环境 本软件需要能够运行python3代码,如果不熟悉该环境的搭建。 推荐使用一款给学生使用编辑软件: [海龟编辑器](https://static.codemao.cn/turtle/client/release/%E6%B5%B7%E9%BE%9F%E7%BC%96%E8%BE%91%E5%99%A82-x64-2.4.0.exe), 2. 安装的python库文件 pandas ttkbootstrap openpyxl 注:如果缺少库文件,请按照提示安装,如果使用海龟编辑器,请直接执行第三步。 3. 程序运行 使用python编辑器打开发布的文件夹,运行文件夹中的app.py文件即可。海龟编辑器会直接提示缺少的库,点击安装即可。 #### 软件设置 1. 添加科目 为了使用小初高不同学段的需求,科目需要自行添加。添加科目有四项内容: 科目名称: 汉语中文,科目的中文名称,如语文、数学 等。 科目简称: 英文字母,设置为自己熟悉的字母简称,如yw、sx、yy等。 科目满分: 数字值, 该科目考试卷面分满分的值。 是否赋分:(功能暂未实现,不可选择) 添加的四个内容为全部必填,学科名称和简称不可重名。 2. 选择分析内容 取消不需要的项目即可,设置内容只要分析过一次,系统会自动记住。 #### 准备数据 请将成绩数据保存到excel文件。 格式要求: 1. 第一行为科目标题,需要包含姓名、班级、学科简称,多余的列无需删除,系统自动忽略。 2. 学科简称需要和添加科目时的学科简称相同。 3. 第二行至文档末尾开始每行为一个学生的数据,表格最后不能有如平均、计数等统计信息。 ![输入图片说明](%E6%B5%8B%E8%AF%95%E6%95%B0%E6%8D%AE/image.png) #### 软件运行 1. 请打开软件,设置好相关内容。 2. 上传准备好的excel成绩文件。 3. 点击软件左下角的生成分析结果按钮。 4. 打开软件目录下的result.xlsx。 提示: 1. 可以调整内容多次生成直到满意。 2. 重新生成时result.xlsx必须关闭。 #### 便捷使用 为了应对多种情况,如有时候需要统计卷面分,有时候需要统计折合分,为了不每次修改,可以采用多添加一个学科的办法。 例如如果需要统计政治折合成绩, 1. 新建一个科目: - 科目名称:政治(折合) - 科目简称: zzz - 科目满分:40 2. 将excel的折合分列命名为zzz, 3. 上传文件,生成结果。 #### 总分计算规则 学生的总分会根据设置有两种获得方式。 1.自动计算 如果没有在excel和科目中都添加名称为 总分、简称为zf的列,那么总分会根据所有识别出来的科目自动计算卷面总分和学生的考试总分。 1. 设定总分 如果在excel中和科目设置中都添加了zf这一列,那么总分不会自动计算,会依据提供的数据分析。 这种情况适用于高中选科或者初中一个科目既分析了卷面总分,又分析了折合分数的情况。 #### 代码解释 1.程序代码解释 为了大家需要对程序进行本地化的修改,程序写了很多注释,并程序设置好了接口。 - main.py 为主程序 - NewUi.py 为界面代码 - core.py 为程序计算的核心代码 - interface.py 为统计方法接口代码,该文件为自定义内容的主要编写区域。 2. 错误修改 如果大家发现计算中存在一些错误,请及时提醒。我们会及时发布修复版本。