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中的__SLOTS__属性使用示例
Feb 18 Python
python实现对excel进行数据剔除操作实例
Dec 07 Python
Python图像处理之识别图像中的文字(实例讲解)
May 10 Python
python入门:这篇文章带你直接学会python
Sep 14 Python
python多继承(钻石继承)问题和解决方法简单示例
Oct 21 Python
pytorch实现mnist分类的示例讲解
Jan 10 Python
浅谈Python 参数与变量
Jun 20 Python
Python 的 __str__ 和 __repr__ 方法对比
Sep 02 Python
Python私有属性私有方法应用实例解析
Sep 15 Python
通过案例解析python鸭子类型相关原理
Oct 10 Python
python 使用OpenCV进行简单的人像分割与合成
Feb 02 Python
python 如何在测试中使用 Mock
Mar 01 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 Memcache 中实现消息队列
2009/11/24 PHP
通过具体程序来理解PHP里面的抽象类
2010/01/28 PHP
zen cart新进商品的随机排序修改方法
2010/09/10 PHP
通过修改Laravel Auth使用salt和password进行认证用户详解
2017/08/17 PHP
php输出控制函数和输出函数生成静态页面
2019/06/27 PHP
JavaScript 动态添加表格行 使用模板、标记
2009/10/24 Javascript
javascript 隐藏/显示指定的区域附HTML元素【legend】用法
2010/03/05 Javascript
Jquery优化效率 提升性能解决方案
2010/09/06 Javascript
JQuery动画和停止动画实例代码
2013/03/01 Javascript
JavaScript中连接操作Oracle数据库实例
2015/04/02 Javascript
举例讲解JavaScript substring()的使用方法
2015/11/09 Javascript
JS实现拖动滚动条评分的效果代码分享
2016/09/29 Javascript
BootStrap Datepicker 插件修改为默认中文的实现方法
2017/02/10 Javascript
如何解决vue与传统jquery插件冲突
2017/03/20 Javascript
JavaScript创建对象方法实例小结
2018/09/03 Javascript
[34:39]DOTA2上海特级锦标赛主赛事日 - 4 败者组第四轮#1COL VS EG第二局
2016/03/05 DOTA
[43:57]Liquid vs Mineski 2019国际邀请赛小组赛 BO2 第二场 8.16
2019/08/19 DOTA
python正则表达式re模块详解
2014/06/25 Python
Python生成8位随机字符串的方法分析
2017/12/05 Python
Python GUI布局尺寸适配方法
2018/10/11 Python
Python3中在Anaconda环境下安装basemap包
2018/10/21 Python
详解python读取image
2019/04/03 Python
PyQt5 对图片进行缩放的实例
2019/06/18 Python
set在python里的含义和用法
2019/06/24 Python
关于Python 中的时间处理包datetime和arrow的方法详解
2020/03/19 Python
解决python DataFrame 打印结果不换行问题
2020/04/09 Python
css3 给页面加个半圆形导航条主要利用旋转和倾斜样式
2014/02/10 HTML / CSS
Abe’s of Maine:自1979以来销售相机和电子产品
2016/11/21 全球购物
Europcar比利时:租车
2019/08/26 全球购物
大学生求职推荐信
2013/11/27 职场文书
终止劳动合同协议书
2014/10/05 职场文书
入党函调证明材料
2014/12/24 职场文书
学生会辞职信
2015/03/02 职场文书
培训学校2015年度工作总结
2015/07/20 职场文书
2015年卫生院健康教育工作总结
2015/07/24 职场文书
MySQL 原理与优化之原数据锁的应用
2022/08/14 MySQL