【Python】Python教师/学生信息管理系统 [简易版] (源码)【独一无二】

news2024/11/25 4:28:32

请添加图片描述


👉博__主👈:米码收割机
👉技__能👈:C++/Python语言
👉公众号👈:测试开发自动化【获取源码+商业合作】
👉荣__誉👈:阿里云博客专家博主、51CTO技术博主
👉专__注👈:专注主流机器人、人工智能等相关领域的开发、测试技术。


Python教师/学生信息管理系统 [简易版] (源码)


目录

  • Python教师/学生信息管理系统 [简易版] (源码)
  • 1. 功能描述
  • 2. 功能展示
    • 2.1 主界面
    • 2.2 学生信息管理
      • 2.2.1 添加学生信息
      • 2.2.2 查询学生信息
      • 2.2.3 修改学生信息
      • 2.2.4 删除学生信息
    • 2.3 教师信息管理
      • 2.3.1 添加教师信息
      • 2.3.2 查询教师信息
      • 2.3.3 修改教师信息
      • 2.3.4 删除教师信息
    • 2.4 课程信息管理
      • 2.4.1 添加课程信息
      • 2.4.2 查询课程信息
      • 2.4.3 修改课程信息
      • 2.4.4 删除课程信息
    • 2.5 成绩信息管理
      • 2.5.1 录入成绩
      • 2.5.2 查询成绩
      • 2.5.3 修改成绩
      • 2.5.4 删除成绩
    • 2.6 退出系统
  • 3. 部分代码


1. 功能描述

这个项目是一个学生成绩管理系统,它可以管理学生、老师、课程和成绩信息。下面是该项目的功能:

  1. 学生信息管理

    • 添加学生信息
    • 查询学生信息
    • 修改学生信息
    • 删除学生信息
  2. 老师信息管理

    • 添加老师信息
    • 查询老师信息
    • 修改老师信息
    • 删除老师信息
  3. 课程信息管理

    • 添加课程信息
    • 查询课程信息
    • 修改课程信息
    • 删除课程信息
  4. 成绩信息管理

    • 录入成绩
    • 查询成绩
    • 修改成绩
    • 删除成绩
  5. 退出系统

通过以上功能,用户可以进行学生、老师、课程和成绩信息的增删改查操作,实现了一个简单的学生成绩管理系统。

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇


2. 功能展示

2.1 主界面

在这里插入图片描述

2.2 学生信息管理

2.2.1 添加学生信息

在这里插入图片描述

2.2.2 查询学生信息

在这里插入图片描述

2.2.3 修改学生信息

在这里插入图片描述

2.2.4 删除学生信息

在这里插入图片描述

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

2.3 教师信息管理

2.3.1 添加教师信息

在这里插入图片描述

2.3.2 查询教师信息

在这里插入图片描述

2.3.3 修改教师信息

在这里插入图片描述

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

2.3.4 删除教师信息

在这里插入图片描述

2.4 课程信息管理

2.4.1 添加课程信息

在这里插入图片描述

2.4.2 查询课程信息

在这里插入图片描述

2.4.3 修改课程信息

在这里插入图片描述

2.4.4 删除课程信息

在这里插入图片描述

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

2.5 成绩信息管理

2.5.1 录入成绩

在这里插入图片描述

2.5.2 查询成绩

在这里插入图片描述

2.5.3 修改成绩

在这里插入图片描述

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

2.5.4 删除成绩

在这里插入图片描述

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

2.6 退出系统

在这里插入图片描述

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

3. 部分代码

from student import Student
from teacher import Teacher

# Import the Course class from course.py
from course import Course


# Grade information management
def gradeManager():
    while True:
        print("------------------成绩信息管理-----------------------")
        print("1.录入成绩   2.查询成绩   3.修改成绩   4.删除成绩  5.返回上级菜单")
        print("---------------------------------------------------")
        con = input("请选择:")
        if con == "1":
            # Enter grades
            enter_grades()
        elif con == "2":
            # Query grades
            query_grades()
        elif con == "3":
            # Modify grades
            modify_grades()
        elif con == "4":
            # Delete grades
            delete_grades()
        elif con == "5":
            break  # Return to the previous menu


# Function to query grades
def query_grades():
    print("---------------查询成绩信息------------------")
    student_number = input("请输入学生学号:")
    if student_number in grades:
        print(f"学生学号: {student_number}")
        for course, score in grades[student_number].items():
            print(f"{course}成绩: {score}")
    else:
        print("未找到该学号的学生。")

# 关注公众号,回复 “学生信息管理系统” 获取源码
# Function to modify grades
def modify_grades():
    print("---------------修改成绩信息------------------")
    student_number = input("请输入学生学号:")

    if student_number in grades:
        course_name = input("请输入要修改成绩的课程名称 (语文/数学/英语): ")

        if course_name in grades[student_number]:
            new_score = input(f"请输入新的{course_name}成绩:")
            grades[student_number][course_name] = float(new_score)
            print("成绩信息修改成功!")
        else:
            print("未找到该课程的成绩记录。")
    else:
        print("未找到该学号的学生。")


# Function to delete grades
def delete_grades():
    print("---------------删除成绩信息------------------")
    student_number = input("请输入学生学号:")

    if student_number in grades:
        course_name = input("请输入要删除成绩的课程名称 (语文/数学/英语): ")

        if course_name in grades[student_number]:
            del grades[student_number][course_name]
            print("成绩信息删除成功!")
        else:
            print("未找到该课程的成绩记录。")
    else:
        print("未找到该学号的学生。")


# 关注公众号,回复 “学生信息管理系统” 获取源码
# Course list to store course objects
course_list = []

# 添加学生的方法
def add_student():
    print("---------------添加学生信息------------------")
    num = input("请输入学号:")
    name = input("请输入姓名:")
    clasz = input("请输入班级:")
    sex = input("请输入性别:")
    age=input("请输入年龄:")
    # 添加学生给新生办理入学,最初是没有成绩,但是创建学生对象的时候,需要成绩列表
    # 所以此处先给个空的成绩列表
    scores = []
    # 创建学生对象
    student = Student(num, name, clasz, sex, age,scores)
    # 将学生对象加入到学生列表中
    student_list.append(student)

# Function to modify a student
def modify_student():
    print("---------------修改学生信息------------------")
    student_number = input("请输入要修改的学生学号:")
    found_student = None

    for student in student_list:
        if student.num == student_number:
            found_student = student
            break

    if found_student:
        new_name = input("请输入新的姓名:")
        new_clasz = input("请输入新的班级:")
        new_sex = input("请输入新的性别:")
        new_age = input("请输入新的年龄:")

        # Update student information
        found_student.name = new_name
        found_student.clasz = new_clasz
        found_student.sex = new_sex
        found_student.age = new_age

        print("学生信息修改成功!")
    else:
        print("未找到该学号的学生。")

# 关注公众号,回复 “学生信息管理系统” 获取源码
# Function to delete a student
def delete_student():
    print("---------------删除学生信息------------------")
    student_number = input("请输入要删除的学生学号:")
    found_student = None

    for student in student_list:
        if student.num == student_number:
            found_student = student
            break

    if found_student:
        student_list.remove(found_student)
        print("学生信息删除成功!")
    else:
        print("未找到该学号的学生。")



# 关注公众号,回复 “学生信息管理系统” 获取源码
# 死循环,保证程序一直执行
while True:
    print("#########################################")
    print("##########    学生成绩管理系统    ##########")
    print("#########################################")
    print("###   1.学生信息管理    2.老师信息管理    ###")
    print("###   3.课程信息管理    4.成绩信息管理    ###")
    print("###             5.退出系统             ###")
    print("#########################################")
    con = input("请选择:")
    if con=="1":
        # 调用学生信息管理的方法
        studentManager()
    elif con=="2":
        # 调用老师信息管理的方法
        teacherManager()
    elif con=="3":
        courseManager()
    elif con=="4":
        gradeManager()
    else :
        print("感谢使用,再见!")
        break

👇👇👇 关注公众号,回复 “学生信息管理系统” 获取源码👇👇👇

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

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

相关文章

#WEB前端

1.实验:vscode安装,及HTML常用文本标签 2.IDE:VSCODE 3.记录: (1)网页直接搜索安装vscode (2)打开vscode,在下图分别安装以下插件: Html Css Support …

《TCP/IP详解 卷一》第10章 UDP 和 IP 分片

目录 10.1 引言 10.2 UDP 头部 10.3 UDP校验和 10.4 例子 10.5 UDP 和 IPv6 10.6 UDP-Lite 10.7 IP分片 10.7.1 例子:IPV4 UDP分片 10.7.2 重组超时 10.8 采用UDP的路径MTU发现 10.9 IP分片和ARP/ND之间的交互 10.10 最大UDP数据报长度 10.11 UDP服务器…

5G网络架构与组网部署01--5G网络架构的演进趋势

目录 1. 5G网络架构的演进趋势 1.1 5G移动通信系统整体架构 1.2 4G移动通信系统整体架构 1.3 4G与5G移动通信系统整体架构对比 1.4 核心网架构演进 1.5 无线接入网演进 1. 整体架构组成:接入网,核心网 2. 5G网络接入网和核心网对应的网元&#xff…

判断回文字符串

判断回文字符串 题目描述:解法思路:解法代码:运行结果: 题目描述: 输入⼀个字符串,判断这个字符串是否是回文字符串(字符串的长度小于等于30,字符串不包含空格)&#xf…

【力扣精选算法100道】——判定是否互为字符重排(哈希专题)

目录 🚩了解题意 🚩算法原理 第一种:排序 第二种方法:哈希 🚩实现代码 面试题 01.02. 判定是否互为字符重排 - 力扣(LeetCode) 🚩了解题意 我们输入俩个字符串,当俩…

FPGA时序约束与分析--建立时间与保持时间

文章目录 前言一、定义二、举例说明2.1 建立时间违规2.2 保持时间违规前言 时序约束的定义–设计者根据实际的系统功能,通过时序约束的方式提出时序要求; FPGA 编译工具根据设计者的时序要求,进行布局布线;编译完成后, FPGA 编译工具还需要针对布局布线的结果,套用特定的…

基于SSM的农业电商服务系统(农产品销售管理系统)(有报告)。Javaee项目。ssm项目。

演示视频: 基于SSM的农业电商服务系统(农产品销售管理系统)(有报告)。Javaee项目。ssm项目。 项目介绍: 采用M(model)V(view)C(controller&#…

【Python】批量读取文件夹中的excel文件

示例展示 代码 import os import pandas as pd folder_path r"C:\Users\admin\Desktop\excelfile" extension"xlsx" files [file for file in os.listdir(folder_path) if file.endswith(. extension)] for file in files:filepath os.path.join(folde…

嵌入式基础知识-信号量,PV原语与前趋图

本篇来介绍信号量与PV原语的一些知识,并介绍其在前趋图上的应用分析。本篇的知识属于操作系统部分的通用知识,在嵌入式软件开发中,同样会用到这些知识。 1 信号量 信号量是最早出现的用来解决进程同步与互斥问题的机制(可以把信…

Spring Boot2.2.4版本启动项目时,访问登录接口显示页面不存在

问题触发场景:IDEA 2023.3.4 SpringBoot 2.2.4 上面4张图片分别是项目结构、Spring Boot启动配置、SpringMVC配置和页面展示在项目中存放的位置,表面上看上去没有太大问题,项目应该会达到预期结果,但是bug总是在不经意间出现&…

华为路由器QOS限速实验

此配置只适合分配好VLAN的各项业务,例如:vlan10是视频业务,vlan20是语音业务等。 1.配置流分类 [ar1]traffic classifier c1 operator and [ar1-classifier-c1]if-match vlan-id 10 [ar1-classifier-c1]q [ar1]traffic classifier c2 oper…

nginx-图片模块

./configure --with-http_image_filter_module location / {root html;index index.html index.htm;if ($arg_w "") {set $arg_w -;}if ($arg_h "") {set $arg_h -;}image_filter resize $arg_w $arg_h;image_filter_jpeg_quality 95; } 访问: 1234…

进程间通信之消息队列及共享内存

1.IPC对象: 内存文件 1.ipcs 查看系统重的消息队列、共享内存、信号灯的信息 2.ipcrm 删除消息队列、共享内存、信号灯 ipcrm -Q/-M/-S key ipcrm -q/-m/-s 消息队列ID/共享内存ID/信号灯ID 消息队列: 3.操作流程: …

Three.js--》探寻Cannon.js构建震撼的3D物理交互体验(一)

我们用three.js可以绘制出各种酷炫的画面,但是当我们想要一个更加真实的物理效果的话,这个时候我们就需要一个物理的库,接下来我们就讲解一下今天要学习的canon,它可以给我们提供一个更加真实的物理效果,像物体的张力、…

如何把chatgpt-on-wechat 与RWKV-Runner结合打造本地微信chatgpt机器人

环境: Win10 11代i7 64G内存 500G硬盘 chatgpt-on-wechat RWKV-Runner 问题描述: 如何把chatgpt-on-wechat 与RWKV-Runner结合打造本地微信chatgpt机器人 解决方案: chatgpt-on-wechat项目 有4种运行程序的方式供你选择: …

国科大计算机网络实验 HTTP服务器

UCAS_CN_LAB HTTP服务器实验 实验要求 •实现:使用C语言实现最简单的HTTP服务器 •同时支持HTTP(80端口)和HTTPS(443端口) •使用两个线程分别监听各自端口 •只需支持GET方法,解析请求报文&#xff…

多点通信与域套接字:2024/3/4

作业1&#xff1a;广播 发送端&#xff1a; #include <myhead.h> int main(int argc, const char *argv[]) {//1.创建套接字int sfdsocket(AF_INET,SOCK_DGRAM,0);if(sfd-1){perror("socket error");return -1;}printf("sfd%d\n",sfd);//2.设置当前…

Android res/values/locale_config.xml文件

Android res/values/locale_config.xml文件 各个国家/地区在android系统里面的缩写代码。最典型的用途是本地化。 <?xml version"1.0" encoding"utf-8"?> <!-- Copyright (C) 2015 The Android Open Source ProjectLicensed under the Apache L…

大模型推荐落地啦!融合知识图谱,蚂蚁集团发布!

引言&#xff1a;电商推荐系统的新突破 随着电子商务平台的蓬勃发展&#xff0c;推荐系统已成为帮助用户在信息过载时代中筛选和发现产品的关键工具。然而&#xff0c;传统的推荐系统主要依赖历史数据和用户反馈&#xff0c;这限制了它们在新商品推出和用户意图转变时的有效性…

【洛谷 P8682】[蓝桥杯 2019 省 B] 等差数列 题解(数学+排序+辗转相除法)

[蓝桥杯 2019 省 B] 等差数列 题目描述 数学老师给小明出了一道等差数列求和的题目。但是粗心的小明忘记了一部分的数列&#xff0c;只记得其中 N N N 个整数。 现在给出这 N N N 个整数&#xff0c;小明想知道包含这 N N N 个整数的最短的等差数列有几项&#xff1f; 输…