[python课程设计1]学生成绩管理系统

news2024/11/6 9:54:56

引言

本课程设计使用数据库,熟悉了Python语言操作数据库,对数据库的增删改查,实现Qt designer界面设计以及excel表格的读写,代码通俗易懂,方便对所学知识的掌握。

需求分析

  1. 用类对学生成绩、代码封装使得操作使用简单;

  1. 利用数据库,增加了操作大量数据的效率,便于增删改查;

  1. 将信息读取数据库,更新后写入数据库,及时备份;

  1. 界面设计,可以在实际中直接应用此项目。

  1. 熟悉了对于界面的背景设计、字体、空间颜色、美化风格等的设计,使界面使用更直观。

概要设计

数据库的使用

使用PyMySQL模块操作数据库对数据进行存取

先安装PyMySQL模块:pip install PyMySQL,再使用时直接导入即可:import pymysql

将存放学生成绩的excel表格导入到数据库中。

安装数据库

本机安装了数据库(使用数据库操作方便快捷,若没有安装数据库,本课程设计可以使用excel表格存储查找,同样也可以。并且在使用数据库时,确保数据库是打开的,在电脑-服务-查看)

新建数据库

create database student_score; 在数据库中新建了存放学生成绩的表格和存放教师登陆信息的表格。

使用数据库

use database ***

在数据库中创建表格create table ***,可以使用命令行也可以在数据库软件中直接创建,代码中创建也可以。多种方式自选

CREATE TABLE IF NOT EXISTS teacher_login(
                            username varchar(32) NOT NULL,
                            password varchar(32) NOT NULL

读取excel表格内容

excel数据存入到数据库的表格中

将存放学生成绩信息的数据存入到数据库的表格中

在数据库中可以查看到数据存放成功了

详细设计

本部分主要分为三个界面类

教师登陆界面

登陆界面中需要查看数据库中教师的信息是否存在,密码是否正确,并给出对应的提示

登陆代码
显示界面

教师注册界面

教师注册界面将注册信息存放到数据库中,对于注册输入的信息给出响应的提示

在数据库中查看注册信息是否导入
效果

教师操作界面

对学生的成绩信息进行操作,可以增添、修改、查询、删除、导出

特别注意的是,增添信息后,数据库和界面表格中的信息都要有同样的操作,显示界面要实时刷新!!

增添信息

注意数据库和界面表格中的信息都要更新

修改信息
查询信息

若学号不存在,则查询失败

删除信息

删除失败

删除成功,数据库与界面表格中的数据都不存在了。

导出信息

提示

默认写入成功到当前运行的文件夹,文件名为当前的时间,可以根据需要修改

总结与分析

用了两周的业余时间写出了这么一个课程设计,肯定还有一些瑕疵,欢迎交流。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/348324.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

java开启线程的四种方法

文章目录1、继承Thread类1.1 代码实现1.2 测试结果2、实现Runnable接口2.1 方式一:直接实现Runnable接口2.1.1 代码实现2.1.2 测试结果2.2 方式二:匿名内部类2.2.1 代码实现2.2.2 测试结果3、实现Callable接口3.1 代码实现3.2 测试结果4、创建线程池4.1 …

常见帧率计算方法实际效果对比及EasyCVR平台的帧率计算方法

什么是帧、帧数、帧率? 帧 (Frame) 帧可以理解为视频或者动画中的每一张画面,而视频和动画特效是由无数张画面组合而成,每一张画面都是一帧。 帧数(Frames) 帧数是帧生成的数量。如果一个动画…

Scala 变量和数据类型(第二章)

第二章、变量和数据类型2.1 注释2.2 变量和常量(重点)2.3 标识符的命名规范2.4 字符串输出2.5 键盘输入2.6 数据类型(重点)回顾:Java数据类型Scala数据类型2.7 整数类型(Byte、Short、Int、Long&#xff09…

OpenAI CEO喊麦ChatGPT:你很酷,但却是个“糟糕的产品”

OpenAI 联合创始人兼CEO山姆阿尔特曼(Sam Altman)最近在一档播客节目中称ChatGPT 为“糟糕的产品”。 阿尔特曼说,“人们访问的是一个有时能用,有时不能用的网站。”他指的是ChatGPT频繁出现的错误消息。 他补充说道:…

【GO】K8s 管理系统项目[API部分--Workflow]

K8s 管理系统项目[API部分–Workflow] 年终于算过完了,身体也康复了,继续学习 1. DB设置 1.1 连接配置 service/config.go package configimport "time"const (ListenAddr "0.0.0.0:9091"KubeConfig "D:\\golang\\k8s-plantform\\config\\cka&…

有序表(中):Size Balanced Tree(SBT/SB树)

1、SB树简介 本质上是一棵二叉搜索树,SB树全称 Size Balanced Tree,顾名思义,这是一棵通过大小(Size)域来维持平衡的二叉搜索树。 它不仅支持简单的二叉搜索树操作,也支持 Select 和 Rank。 定义一下Siz…

每天一道大厂SQL题【Day10】电商分组TopK实战

每天一道大厂SQL题【Day10】电商分组TopK实战 大家好,我是Maynor。相信大家和我一样,都有一个大厂梦,作为一名资深大数据选手,深知SQL重要性,接下来我准备用100天时间,基于大数据岗面试中的经典SQL题&…

Linux入门篇(二)

Linux前言链接文件符号链接(软链接)硬链接shellshell 的类型shell的父子关系理解外部命令和内建命令外部命令内建命令Linux环境变量PATH环境变量前言 在这一章,我对Linux中有关shell较为深入的理解和环境变量方面知识的一个记录。同时&#x…

PBR工作流实现与对比

工作流实现工作流中的核心内容便是贴图,不论是UE4还是Unity都支持将PBR的参数以贴图的形式传入引擎,我们可以根据一个物体同一mesh或不同mesh的不同区域的属性差异来控制贴图上的属性产生不同,而没有贴图的话,一个物体只能使用一种…

Java Lambda表达式 匿名内部类 函数式接口(FunctionalInterface)

Java Lambda表达式定义背景示例匿名类实现Lambda表达式实现对比匿名类和Lambda实现Lambda表达式(调用)说明Lambda表达式的语法Java 1.8 新特性:函数式接口jdk 1.8 自带的函数式接口 (举例)定义 参考Oracle官网&#x…

目标检测6--R-FCN中的Position-Sensitive RoI Pooling

文章目录1.介绍2.Position-Sensitive Score Map 和 Position-Sensitive RoI Pooling3.源码参考资料欢迎访问个人网络日志🌹🌹知行空间🌹🌹 1.介绍 论文: Region-based Fully Convolutional Networks 代码: R-FCN 本论文作者同9.De…

电子组装流水线MES系统实行条码质量追溯

在电子制造行业,保证生产过程的稳定性与对制造关键能力的改善与提升,是大多数制造企业的管理重心,而缺乏有效的方法与手段。MES系统即制造执行系统,是企业信息集成的纽带,企业实施敏捷制造战略,实现车间生产…

C++学习记录——십 STL初级认识、标准库string类

文章目录1、什么是STL2、STL简介3、什么是string类4、string类的常用接口说明1、常见构造函数2、容量操作3、迭代器4、其他的标准库的string类关于string类的内容,可以在cplusplus.com查看到。 1、什么是STL STL是C标准库的重要组成部分,不仅是一个可复…

指 针

1.指针指针的作用: 可以通过指针间接访问内存(可以通过指针的保存一个地址(指针--地址))内存编号是从0开始记录的,一般用十六进制数字表示。可以利用指针变量保存地址指针变量的定义和使用指针变是定义语法: 数据类型 …

【MFC】模拟采集系统——图形按钮(18)

左边可以简单地使用一个组框,贴上背景图。当然,也可以使用新的对话框。 图形按钮类 1、类向导-》添加类-》选择MFC-》填入新类名称-》选择父类为 CButton 2、添加消息响应函数和虚函数: 消息响应mouse leave (离开) mouse move …

CSS3 animation-fill-mode详解

CSS3 animation-fill-mode详解 定义 animation-fill-mode 属性规定当动画不播放时(当动画完成时,或当动画有一个延迟未开始播放时),要应用到元素的样式。 默认情况下,CSS 动画在第一个关键帧播放完之前不会影响元素&…

各CCFA类核心期刊的信息汇总与评价总结(科技领域)

CCF中文期刊投稿选择之篇章二:各CCFA类核心期刊的信息汇总与评价总结上一篇章总结一部分期刊的介绍自动化学报相关信息的介绍有关录用比、审稿速度及费用的相关数据收集相关学术论坛上网友的评价与讨论期刊年度出版概况与学术热点动态(知网)计算机学报相…

2023年可供学习的 10 大 SaaS 知识库工具!

客户迫切希望快速找到所需的信息。在软件行业尤其如此,因为软件行业节奏很快,公司经常销售学习曲线陡峭的产品。为了减缓流失率并提高盈利能力,SaaS 公司正在转向知识库,以帮助他们让客户了解情况。什么是知识库?您可以…

设计模式之代理模式详解和应用

目录1 代理模式定义2 代理模式的应用场景3 代理模式的通用写法4 从静态代理到动态代理5 静态模式在业务中的应用6 动态代理在业务中的应用7 手写JDK动态代理实现原理7.1 JDK动态代理的实现原理7.2 CGLib动态代理容易踩的坑8 CGLib代理调用API及原理分析9 CGLib和JDK动态代理对比…

JVM - 高效并发

目录 Java内存模型和内存间的交互操作 Java内存模型 内存间的交互操作 内存间交互操作的规则 volatile特性 多线程中的可见性 volatile 指令重排原理和规则 指令重排 指令重排的基本规则 多线程中的有序性 线程安全处理 锁优化 锁优化之自旋锁与自适应自旋 锁优…