基本功能:

  • 能够实现学生成绩相关信息的输入、输出、查找、删除、修改等功能;(使用数据库对数据进行存取)
  • 输入并存储学生的信息:通过输入学生的学号、姓名、和分数,然后就可以把数据保存在建立的student文件里面。
  • 打印学生的所有信息:通过一个打印函数就可以把所有的信息打印在屏幕上。
  • 查找学生信息:这个功能通过输入学号,查找该学生的信息,如果有该学号就输出该学生的信息,没有该学号就提示输入的学号不存在。
  • 删除学生信息:该功能是对相应的学生进行删除操作,如果学生存在就查找到进行删除。
  • 修改学生信息:这个功能首先通过查询功能查询出该学生是否存在,如果存在就对该学生的信息进行修改,如果不存在则返回到主界面。

实现效果:

制作技巧

1.定义变量

(1)定义交互输入变量

主要用于展示学生成绩管理系统的操作界面。

(2)定义学生成绩信息变量

主要用于学生成绩信息的存取。

s_info = """
*****************************************************【学生成绩管理系统】q. 退出学生成绩系统1. 显示学生成绩信息2. 新建学生成绩信息                            3. 查询学生成绩信息4. 删除学生成绩信息5. 修改学生成绩信息******************************************************"""students=[]

2.读取学生成绩信息

主要是从TXT文件中读取学生成绩信息,并保存到学生成绩变量中。

f=open("students.txt","r+")for st in f.readlines():students.append(eval(st))f.close()

3.循环等待操作指令并执行

主要是循环等待输入的学生管理系统操作指令,获取到操作指令后执行对学生成绩信息的显示、新建、查询、删除、修改操作。

while True:print(s_info)handle = input('请选择你要的操作选项:')if handle == 'q':print('q. 退出系统')breakelif handle == '1':            s_display(students)elif handle == '2':s_new(students)elif handle == '3':s_find(students)       elif handle == '4':s_delect(students)elif handle == '5':s_modify(students)         else:print('请输入正确的操作选项!')

4.编写操作指令执行函数

(1)显示学生成绩信息函数

主要功能是显示所有学生成绩信息。

def s_display(students):print('1. 显示全部信息')print('姓名\t语文\t数学\t英语\t总分')for stu in students:print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')

(2)新建学生成绩信息函数

主要是新建学生成绩信息,并更新保存学生成绩信息的文件。

def s_new(students):print('2. 新建学生信息')name = str(input('请输入学生的姓名:'))chinese = int(input('请输入学生的语文成绩:'))math = int(input('请输入学生的数学成绩:'))english = int(input('请输入学生的英语成绩:'))total = chinese + math + englishstu = {'name': name, 'chinese': chinese, 'math': math, 'english': english, 'total': total}students.append(stu)s_write_to_file(students)

(3)查询学生成绩信息函数

主要是查询给定姓名的学生成绩信息。


def s_find(students):print('3. 查询学生信息')name = input('请输入你要查询学生的姓名:')for stu in students:if name == stu['name']:print('姓名\t语文\t数学\t英语\t总分')print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')breakelse:print('该学生不存在, 请检查名字是否输入正确!')s_write_to_file(students)

(4)删除学生成绩信息函数

主要是删除给定姓名的学生成绩信息,并更新保存学生成绩信息的文件。

def s_delect(students):print('4. 删除学生信息')name = input('请输入你要删除学生的姓名:')for stu in students:if name == stu['name']:students.remove(stu)breakelse:print('该学生不存在, 请检查名字是否输入正确!')s_write_to_file(students)

(5)修改学生成绩信息函数

主要是修改给定姓名的学生成绩信息,并更新保存学生成绩信息的文件。


def s_modify(students):print('5. 修改学生信息')name = input('请输入你要修改学生的姓名:')for stu in students:if name == stu['name']:print('(如果不想修改,直接回车!)')name = input('请重新输入学生的姓名:')chinese = input('请重新输入学生的语文成绩:')math = input('请重新输入学生的数学成绩:')english = input('请重新输入学生的英语成绩:')if name:stu['name'] = str(name)if chinese:stu['chinese'] = int(chinese)if math:stu['math'] = int(math)if english:stu['english'] = int(english)stu['total'] = stu['chinese'] + stu['math'] + stu['english']breakelse:print('该学生不存在, 请检查名字是否输入正确!')s_write_to_file(students)

5.保存学生成绩信息函数

主要实现学生成绩信息的保存更新。


def s_write_to_file(students):f=open("students.txt","r+")for s  in students:f.write(str(s)+"\n")f.close()

完整源代码

def s_write_to_file(students):f=open("students.txt","r+")for s  in students:f.write(str(s)+"\n")f.close()def s_display(students):print('1. 显示全部信息')print('姓名\t语文\t数学\t英语\t总分')for stu in students:print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')def s_new(students):print('2. 新建学生信息')name = str(input('请输入学生的姓名:'))chinese = int(input('请输入学生的语文成绩:'))math = int(input('请输入学生的数学成绩:'))english = int(input('请输入学生的英语成绩:'))total = chinese + math + englishstu = {'name': name, 'chinese': chinese, 'math': math, 'english': english, 'total': total}students.append(stu)s_write_to_file(students)def s_find(students):print('3. 查询学生信息')name = input('请输入你要查询学生的姓名:')for stu in students:if name == stu['name']:print('姓名\t语文\t数学\t英语\t总分')print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')breakelse:print('该学生不存在, 请检查名字是否输入正确!')s_write_to_file(students)def s_delect(students):print('4. 删除学生信息')name = input('请输入你要删除学生的姓名:')for stu in students:if name == stu['name']:students.remove(stu)breakelse:print('该学生不存在, 请检查名字是否输入正确!')s_write_to_file(students)def s_modify(students):print('5. 修改学生信息')name = input('请输入你要修改学生的姓名:')for stu in students:if name == stu['name']:print('(如果不想修改,直接回车!)')name = input('请重新输入学生的姓名:')chinese = input('请重新输入学生的语文成绩:')math = input('请重新输入学生的数学成绩:')english = input('请重新输入学生的英语成绩:')if name:stu['name'] = str(name)if chinese:stu['chinese'] = int(chinese)if math:stu['math'] = int(math)if english:stu['english'] = int(english)stu['total'] = stu['chinese'] + stu['math'] + stu['english']breakelse:print('该学生不存在, 请检查名字是否输入正确!')s_write_to_file(students)if __name__=="__main__":s_info = """
*****************************************************【学生成绩管理系统】q. 退出学生成绩系统1. 显示学生成绩信息2. 新建学生成绩信息                            3. 查询学生成绩信息4. 删除学生成绩信息5. 修改学生成绩信息******************************************************"""students=[]f=open("students.txt","r+")for st in f.readlines():students.append(eval(st))f.close()while True:print(s_info)handle = input('请选择你要的操作选项:')if handle == 'q':print('q. 退出系统')breakelif handle == '1':            s_display(students)elif handle == '2':s_new(students)elif handle == '3':s_find(students)       elif handle == '4':s_delect(students)elif handle == '5':s_modify(students)         else:print('请输入正确的操作选项!')

结尾:

今天的分享就到这里,喜欢就点个吧!

需要完整的项目源码的可以私信我即可哟!或者点击这行蓝色字体!

Python制作简单的学生成绩管理系统相关推荐

  1. Python:结合列表和字典,编写一个简单的学生成绩管理系统

            本次主要使用新学的列表和字典,结合定义函数等知识点,成功编写了一个简单的学生成绩管理系统.实现了在系统内使用学生的姓名或者学号,即可实现显示.添加.删除.修改.查找(增删改查).成绩排 ...

  2. 简单的学生成绩管理系统

    简单的学生成绩管理系统 写一个科目类,包含科目名称,科目分数2个数据成员,一个衡量是否及格的成员函数,用其构造函数为科目对象赋值.写一个学生类,含学号,姓名2个数据成员,以及一个成绩对象指针成员(指向 ...

  3. java简单学生成绩系统_JAVA 实现简单的学生成绩管理系统

    一.实验目的 1.掌握java的类与对象的基本概念: 2.掌握简单的信息管理系统的设计与实现. 二.实验环境 实验建议在安装了以下软件的计算机上完成: 1.       Windows xp/win7 ...

  4. 第一篇博客——C语言实现简单的学生成绩管理系统

    C语言简单实现学生成绩管理系统 一.前言 首先,要写一个管理系统必须要先搭出一个框架来,即明确自己要实现哪些功能,将每个功能都写陈一个函数,然后再去编写实现各个功能的函数,最后再思考各个函数之间的相互 ...

  5. 【Python课程设计】学生成绩管理系统

    [Python课程设计]学生成绩管理系统 1.需求分析 2.功能设计与分析 1.使用数据库对数据进行存取 (1)使用PyMySQL模块操作数据库对数据进行存取 (2)创建数据库school,创建数据表 ...

  6. python成绩管理系统界面-python实现简易版学生成绩管理系统

    300来行python代码实现简易版学生成绩管理系统,供大家参考,具体内容如下 使用链表来实现 class Node(object): def __init__(self, data, pointer ...

  7. C语言期末课设:从头开始设计一个简单的学生成绩管理系统

    整个可以运行的源代码在文章最后!!! 首先我们先创建一个结构体,用来抽象一个学生的信息,包含该学生的学号,姓名,成绩(这里我们为了程序简单,只包含了一个成绩.也可以自行添加,其他成绩信息,以及性别,年 ...

  8. 学生成绩管理系统mysql课程设计_数据库课程设计(极其简单的学生成绩管理系统)...

    这个是我大三上学期的时候刚开始学习数据库课程的时候做的一个很稀烂的课程设计的源代码,当时刚刚开始学习Java和Oracle,而且当时就花了今年元旦3天假,做的这个C/S程序中没有加入触发器和存储过程等 ...

  9. Python课程设计:学生成绩管理系统(附源代码)

    版权声明:本文为CSDN博主「大格子嘞」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明.原文链接: https://blog.csdn.net/qq_43971504 ...

  10. C实现的一个简单的学生成绩管理系统

    /*学生成绩管理系统 */ //#include "StdAfx.h" #include "stdio.h"   /*标准输入输出函数库*/ #include ...

最新文章

  1. 省选前的计划(日更,然而你们天天吊打我)
  2. Android --- Session ‘app’: Error Launching activity解决办法
  3. IOS - IPhone或IPAD,如何恢复出厂操作系统?
  4. 笔记整理——linux程序设计
  5. CentOS 5安装GIT的基本命令
  6. 数据结构之查找的概念及简单实现
  7. mats测试所有显存命令_RGBLCD液晶屏层叠显示测试
  8. 基于JAVA+Servlet+JSP+MYSQL的酒店管理系统
  9. 两条平行导线同向电流_如何根据功率计算电流?老师傅说这么做很简单
  10. ubuntu创建wifi热点(android可识别)亲测可用
  11. 把计算机怎么连接手机的网络助手在哪里,手机连接电脑上网,详细教您手机如何连接电脑上网...
  12. STC学习:串口通信
  13. 电子系统中的品质因数
  14. 日企抛等离子淘汰论 专家称其不敌中国企业
  15. Html导出到Word带页眉页脚
  16. win7html.exe,win7系统exe程序打开方式还原怎么弄 win7系统还原exe程序打开方式办法介绍...
  17. Java常用工具类-发短信(集成河南华夏通信短信网关)
  18. JAVA并发容器-ConcurrentHashMap 1.7和1.8 源码解析
  19. flowable相关的一些名词说明
  20. oracle rfs进程过多,oracle 11.2 DataGuard少了日志应用进程RFS

热门文章

  1. unity导出fbx模型_三维制作内容,maya模型贴图文件导入untiy,烘焙灯光贴图
  2. Liunx学习笔记--基本网络设定(测试内容)
  3. 刘宇凡:我眼中的SEO思维
  4. C语言坐标打飞机,C语言实现打飞机小游戏
  5. 网站克隆工具_全员惊艳!强推5款高质量的小众实用网站
  6. 语义化版本号 Sematic Versioning
  7. java aspect调用,在Spring 中使用@Aspect 控制自定义注解的操作
  8. ASPECT RATIO
  9. C# winform 魔兽MH全图 :WjeWar V1.5 (完全开源)
  10. python 爬取淘宝视频_识别假货有绝招,先用python抓淘宝评论(附视频教程)