【python】python基于tkinter的学生成绩管理系统(源码+数据文件)【独一无二】(二)

简介: 【python】python基于tkinter的学生成绩管理系统(源码+数据文件)【独一无二】(二)

【python】python基于tkinter的学生成绩管理系统(源码+数据文件)【独一无二】(一):https://developer.aliyun.com/article/1581264

9. 查询学生信息
def query_by_name(self):
    query_name = self.query_name_entry.get()
    if query_name:
        with open(self.filename, "r") as file:
            reader = csv.reader(file)
            next(reader)
            for row in reader:
                if row[0] == query_name:
                    self.tree.delete(*self.tree.get_children())
                    self.tree.insert("", tk.END, values=row)
                    return
        messagebox.showinfo("信息", "未找到学生")
    else:
        messagebox.showwarning("警告", "请输入姓名")

按姓名或学号查询学生信息,若找到匹配的记录,则在表格中显示该记录。

10. 统计分数段
def stats_score_range(self):
    course = self.course_entry.get()
    score_range = self.score_range_entry.get()
    if course and score_range:
        try:
            min_score, max_score = map(int, score_range.split('-'))
        except ValueError:
            messagebox.showwarning("警告", "请输入正确的分数段格式 (例如 60-70)")
            return
        course_index = {"语文": 2, "数学": 3, "英语": 4}.get(course)
        if course_index is None:
            messagebox.showwarning("警告", "请输入正确的课程名 (语文, 数学, 英语)")
            return
        with open(self.filename, "r") as file: # > 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

            reader = csv.reader(file)
            next(reader)
            filtered_students = [row for row in reader if min_score <= int(row[course_index]) <= max_score]
        self.tree.delete(*self.tree.get_children())
        for row in filtered_students:
            self.tree.insert("", tk.END, values=row)
    else:
        messagebox.showwarning("警告", "请输入课程名和分数段")

按指定课程和分数段统计学生信息,并在表格中显示符合条件的学生记录。


👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈


11. 按成绩排序
def sort_by_score(self, order="asc"):
    course = self.sort_course_entry.get()
    if course:
        course_index = {"语文": 2, "数学": 3, "英语": 4}.get(course)
        if course_index is None:
            messagebox.showwarning("警告", "请输入正确的课程名 (语文, 数学, 英语)")
            return
        with open(self.filename, "r") as file:
            
            # 略。。。。
            # 略。。。。
            # 略。。。。> 👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

            # 略。。。。
            # 略。。。。
            
    else:
        messagebox.showwarning("警告", "请输入课程名")

按指定课程的成绩对学生信息进行排序,并在表格中显示排序后的结果。


该代码通过定义一个StudentInfoSystem类,使用Tkinter创建图形用户界面,提供了学生信息的添加、删除、修改、查询、统计和排序功能。数据通过CSV文件存储和管理,每个功能模块都对应具体的操作,实现了一个功能完善的学生信息管理系统。


三、可视化分析

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

主界面展示

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

添加学生

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

查询学生

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

统计分数段

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

成绩排序

👉👉👉 源码获取 关注【测试开发自动化】公众号,回复 “ 学生界面 ” 获取。👈👈👈

相关文章
|
10天前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品安全追溯系统的深度学习模型
使用Python实现智能食品安全追溯系统的深度学习模型
33 4
|
25天前
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
43 2
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
17天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
65 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
17天前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
62 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
22天前
|
图形学 Python
SciPy 空间数据2
凸包(Convex Hull)是计算几何中的概念,指包含给定点集的所有凸集的交集。可以通过 `ConvexHull()` 方法创建凸包。示例代码展示了如何使用 `scipy` 库和 `matplotlib` 绘制给定点集的凸包。
27 1
|
23天前
|
JSON 数据格式 索引
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
|
23天前
|
数据采集 Web App开发 iOS开发
如何使用 Python 语言的正则表达式进行网页数据的爬取?
使用 Python 进行网页数据爬取的步骤包括:1. 安装必要库(requests、re、bs4);2. 发送 HTTP 请求获取网页内容;3. 使用正则表达式提取数据;4. 数据清洗和处理;5. 循环遍历多个页面。通过这些步骤,可以高效地从网页中提取所需信息。
|
22天前
|
索引 Python
SciPy 空间数据1
SciPy 通过 `scipy.spatial` 模块处理空间数据,如判断点是否在边界内、计算最近点等。三角测量是通过测量角度来确定目标距离的方法。多边形的三角测量可将其分解为多个三角形,用于计算面积。Delaunay 三角剖分是一种常用方法,可以对一系列点进行三角剖分。示例代码展示了如何使用 `Delaunay()` 函数创建三角形并绘制。
30 0
|
4月前
|
前端开发 JavaScript 关系型数据库
基于Python+Vue开发的电影订票管理系统
该项目是基于Python+Vue开发的电影订票管理系统(前后端分离),这是一项为大学生课程设计作业而开发的项目。该系统旨在帮助大学生学习并掌握Python编程技能,同时锻炼他们的项目设计与开发能力。通过学习基于Python的电影订票管理系统项目,大学生可以在实践中学习和提升自己的能力,为以后的职业发展打下坚实基础。
30 1
|
4月前
|
数据采集 数据可视化 关系型数据库
【优秀python web设计】基于Python flask的猫眼电影可视化系统,可视化用echart,前端Layui,数据库用MySQL,包括爬虫
本文介绍了一个基于Python Flask框架、MySQL数据库和Layui前端框架的猫眼电影数据采集分析与可视化系统,该系统通过爬虫技术采集电影数据,利用数据分析库进行处理,并使用Echart进行数据的可视化展示,以提供全面、准确的电影市场分析结果。
142 4