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实现的udp协议Server和Client代码实例
Jun 04 Python
Python实现检测服务器是否可以ping通的2种方法
Jan 01 Python
Python使用dis模块把Python反编译为字节码的用法详解
Jun 14 Python
python fabric实现远程部署
Jan 05 Python
Python使用MD5加密算法对字符串进行加密操作示例
Mar 30 Python
python逐行读写txt文件的实例讲解
Apr 03 Python
pygame实现打字游戏
Feb 19 Python
Pytoch之torchvision.transforms图像变换实例
Dec 30 Python
python 删除系统中的文件(按时间,大小,扩展名)
Nov 19 Python
Python读取ini配置文件传参的简单示例
Jan 05 Python
python爬虫框架feapde的使用简介
Apr 20 Python
python机器学习Github已达8.9Kstars模型解释器LIME
Nov 23 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把JPEG图片转换成Progressive JPEG的方法
2014/06/30 PHP
PHP中PDO连接数据库中各种DNS设置方法小结
2016/05/13 PHP
跨域表单提交状态的变相判断代码
2009/11/12 Javascript
JQuery中getJSON的使用方法
2010/12/13 Javascript
Javascript 倒计时源代码.(时.分.秒) 详细注释版
2011/05/09 Javascript
JavaScript 反科里化 this [译]
2012/09/20 Javascript
iframe 上下滚动条如何默认在下方实现原理
2012/12/10 Javascript
浅析IE10兼容性问题(frameset的cols属性)
2014/01/03 Javascript
JavaScript字符串常用类使用方法汇总
2015/04/14 Javascript
JS实现的文字与图片定时切换效果代码
2015/10/06 Javascript
js窗口关闭提示信息(兼容IE和firefox)
2015/10/23 Javascript
jQuery实现控制文字内容溢出用省略号(…)表示的方法
2016/02/26 Javascript
js精准的倒计时函数分享
2016/06/29 Javascript
Javascript 严格模式use strict详解
2017/09/16 Javascript
HTML5开发Kinect体感游戏的实例应用
2017/09/18 Javascript
详解基于Vue cli生成的Vue项目的webpack4升级
2018/06/19 Javascript
mpvue开发音频类小程序踩坑和建议详解
2019/03/12 Javascript
原生js实现的观察者和订阅者模式简单示例
2020/04/18 Javascript
[40:13]Ti4 冒泡赛第二天 iG vs NEWBEE 2
2014/07/15 DOTA
Python2.x中文乱码问题解决方法
2015/06/02 Python
Python工程师面试题 与Python基础语法相关
2016/01/14 Python
浅谈使用Python变量时要避免的3个错误
2017/10/30 Python
Python决策树分类算法学习
2017/12/22 Python
Python基于opencv调用摄像头获取个人图片的实现方法
2019/02/21 Python
使用python脚本自动创建pip.ini配置文件代码实例
2019/09/20 Python
FFT快速傅里叶变换的python实现过程解析
2019/10/21 Python
解决pycharm同一目录下无法import其他文件
2020/02/12 Python
HTML5之SVG 2D入门7—SVG元素的重用与引用
2013/01/30 HTML / CSS
会计大学生职业生涯规划书范文
2014/01/13 职场文书
2014社区三八妇女节活动方案
2014/03/30 职场文书
企业百日安全活动总结
2015/05/07 职场文书
2016年村干部公开承诺书(公开承诺事项)
2016/03/25 职场文书
合作意向书怎么写
2019/06/24 职场文书
openstack中的rpc远程调用的方法
2021/07/09 Python
Nginx配置文件详解以及优化建议指南
2021/09/15 Servers
Java对文件的读写操作方法
2022/04/29 Java/Android