python实现学生成绩测评系统


Posted in Python onJune 22, 2020

本文实例为大家分享了python实现学生成绩测评系统的具体代码,供大家参考,具体内容如下

1、问题描述(功能要求): 

根据实验指导书要求,完成相关软件系统的设计,要求内容翔实,条理清晰,图文并茂(流程图),主要(关键代码)须有详细注释,写清楚测试结果,分析存在的问题:

1)通过类的知识实现学生成绩信息(学号、姓名、院系、三门课成绩、考试平均成绩、同学互评分、任课教师评分、综合测评总分,其中综合测评总分由:考试平均成绩70%,同学互评分10%,任课教师评分20%,);

2)能够实现学生成绩信息的保存和读取(如果使用数据库存取信息可加分);

3)实现所有相关信息的输入、输出、查找、删除、修改等功能;

4)系统界面应至少实现控制台界面(另外使用桌面窗体界面可加分):

2、问题的解决方案: 

根据系统功能要求,可以将问题解决分为以下步骤: 

(1)分析系统中的相关功能和信息的关系; 

(2)根据问题描述,设计数据访问流程和访问界面(控制台界面);  

(3)完成类中各个成员函数的定义; 

(4)功能调试; 

(5)完成系统总结报告以及系统使用说明书。 

继python汽车系统我接着比葫芦照瓢搞了一个学生信息管理系统:

具体实现就简单点说:

首先我创建一个全局变量存学生的所有信息

添加时我先把每次的信息添加进一个列表然后再把这个列表添加进全局变量的列表里面

删除就是遍历列表然后查询学号对应如果相同就调用del函数进行整行删除即可

修改和删除操作差别不大一个是del一个是直接等于要修改的地方

显示就是遍历该列表输出即可

保存数据就是open(“文件目录”, 'r")存取不覆盖存取

具体实现就说这么多运行案例就不一一运行了实践证明是可以的 

import os
def printwindows():
 print('='*30)
 print('学生信息管理系统V1.0')
 print('1.添加学生信息')
 print('2.删除学生信息')
 print('3.修改学生信息')
 print('4.显示所有学生信息')
 print('5.保存数据')
 print('0.退出系统')
 print('='*30)
students = []
def add_student():
 while 1:
 os.system("cls")
 student = []
 student_name = input("请输入学生姓名:")
 student_id = input("请输入学生学号:")
 student_xingbie = input("请输入学生性别:")
 student_age = input("请输入学生年龄:")
 student_pione = input("请输入学生电话:")
 student.append(student_name)
 student.append(student_id)
 student.append(student_xingbie)
 student.append(student_age)
 student.append(student_pione)
 students.append(student)
 n = input("是否继续添加?y or n:")
 if n == "n":
  break
def del_student():
 while 1:
 del_student_id = input("请输入要删除的学生学号:")
 for student in students:
  if student[1] == del_student_id:
  del student
  print("删除成功!")
  break
 n = input("是否继续添加?y or n:")
 if n == "n":
  break
def updata_student():
 while 1:
 updata_student_id = input("请输入你要更改的学生学号:")
 for student in students:
  if student[1] == updata_student_id:
  flag = input("选择你要更改的学生信息:1.姓名,2.学号,3.性别,4.年龄,5.电话:")
  if flag == 1:
   name = input("请输入你要换成的名字:")
   student[0] = name
  elif flag == 2:
   student_id = input("请输入你要换成的学号:")
   student[1] = student_id
  elif flag == 3:
   student_xinbie = input("请输入你要换成的性别:")
   student[2] = student_xinbie
  elif flag == 4:
   student_age = input("请输入你要换成的年龄:")
   student[3] = student_age
  elif flag == 5:
   student_pione = input("请输入你要换成的电话:")
   student[4] = student_pione
  else :
   pass 
 n = input("是否继续添加?y or n:")
 if n == "n":
  break
def show_student():
 print(" 学生信息")
 print("姓名 学号 性别 年龄 电话")
 for student in students:
 print(student[0] + " " + student[1] + " " + student[2] + " " + student[3] + " " + student[4])
 os.system("pause") 
def read_in_file():
 with open("student_data.txt", 'a') as f:
 for student in students:
  f.write(student[0] + " " + student[1] + " " + student[2] + " " + student[3] + " " + student[4] + '\n')
 print("保存成功!")
def main():
 while(1):
 os.system("cls")
 printwindows()
 print("请输入你要执行的代码:")
 n = int(input())
 if n == 1:
  add_student()
 elif n == 2:
  del_student()
 elif n == 3:
  updata_student()
 elif n == 4:
  show_student()
 elif n == 5:
  read_in_file()
 else:
  break
if __name__ == '__main__':
 main()

更多学习资料请关注专题《管理系统开发》。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python检测远程服务器tcp端口的方法
Mar 14 Python
用Python中的wxPython实现最基本的浏览器功能
Apr 14 Python
python使用wxpython开发简单记事本的方法
May 20 Python
python中字典(Dictionary)用法实例详解
May 30 Python
PyQt 线程类 QThread使用详解
Jul 16 Python
基于Python的文件类型和字符串详解
Dec 21 Python
Python中使用Counter进行字典创建以及key数量统计的方法
Jul 06 Python
利用Python对文件夹下图片数据进行批量改名的代码实例
Feb 21 Python
Python pandas.DataFrame 找出有空值的行
Sep 09 Python
python开发实例之Python的Twisted框架中Deferred对象的详细用法与实例
Mar 19 Python
Python reduce函数作用及实例解析
May 08 Python
Python填充任意颜色,不同算法时间差异分析说明
May 16 Python
python算的上脚本语言吗
Jun 22 #Python
Python读取二进制文件代码方法解析
Jun 22 #Python
怎么快速自学python
Jun 22 #Python
关于python的缩进规则的知识点详解
Jun 22 #Python
python可以用哪些数据库
Jun 22 #Python
Python ckeditor富文本编辑器代码实例解析
Jun 22 #Python
keras做CNN的训练误差loss的下降操作
Jun 22 #Python
You might like
php图片上传存储源码并且可以预览
2011/08/26 PHP
从零开始学YII2框架(六)高级应用程序模板
2014/08/20 PHP
PHP中preg_match函数正则匹配的字符串长度问题
2015/05/27 PHP
PHP中使用curl入门教程
2015/07/02 PHP
php微信公众号开发之二级菜单
2018/10/20 PHP
Yii框架数据库查询、增加、删除操作示例
2019/10/14 PHP
JavaScript 获得选中文本内容的方法
2009/02/15 Javascript
js 对象是否存在判断
2009/07/15 Javascript
Document 对象的常用方法
2009/07/31 Javascript
小试JQuery的AutoComplete插件
2011/05/04 Javascript
jQuery的deferred对象使用详解
2011/08/20 Javascript
javascript学习笔记(一) 在html中使用javascript
2012/06/18 Javascript
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
用js实现控件的隐藏及style.visibility的使用
2013/06/14 Javascript
JavaScript立即执行函数的三种不同写法
2014/09/05 Javascript
JavaScript获取页面中超链接数量的方法
2015/11/09 Javascript
vue-router:嵌套路由的使用方法
2017/02/21 Javascript
详解angular路由高亮之RouterLinkActive
2018/04/28 Javascript
详解JavaScript中typeof与instanceof用法
2018/10/24 Javascript
Echarts之悬浮框中的数据排序问题
2018/11/08 Javascript
小程序实现搜索框功能
2020/03/26 Javascript
Python win32com 操作Exce的l简单方法(必看)
2017/05/25 Python
基于Python代码编辑器的选用(详解)
2017/09/13 Python
python使用turtle库绘制树
2018/06/25 Python
Python实现井字棋小游戏
2020/03/09 Python
Django使用Profile扩展User模块方式
2020/05/14 Python
Python基于yaml文件配置logging日志过程解析
2020/06/23 Python
C语言中break与continue的区别
2012/07/12 面试题
灵泰克Java笔试题
2016/01/09 面试题
优质的学校老师推荐信
2013/10/28 职场文书
餐饮业员工工作决心书
2014/03/11 职场文书
党支部创先争优活动总结
2014/08/28 职场文书
公司仓库管理制度
2015/08/04 职场文书
解决python绘图使用subplots出现标题重叠的问题
2021/04/30 Python
pytorch fine-tune 预训练的模型操作
2021/06/03 Python
Matplotlib可视化之添加让统计图变得简单易懂的注释
2021/06/11 Python