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实现代理服务功能实例
Nov 15 Python
Python日志模块logging简介
Apr 13 Python
Linux下用Python脚本监控目录变化代码分享
May 21 Python
Python实现提取谷歌音乐搜索结果的方法
Jul 10 Python
python opencv 直方图反向投影的方法
Feb 24 Python
python try 异常处理(史上最全)
Mar 07 Python
python中seaborn包常用图形使用详解
Nov 25 Python
Pytorch 的损失函数Loss function使用详解
Jan 02 Python
使用Python实现将多表分批次从数据库导出到Excel
May 15 Python
Django ForeignKey与数据库的FOREIGN KEY约束详解
May 20 Python
python 实现批量图片识别并翻译
Nov 02 Python
python中random模块详解
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
在IIS上安装PHP4.0正式版
2006/10/09 PHP
深入PHP与浏览器缓存的分析
2013/06/03 PHP
php源码分析之DZX1.5字符串截断函数cutstr用法
2015/06/17 PHP
php 使用mpdf实现指定字段配置字体样式的方法
2019/07/29 PHP
限制文本字节数js代码
2007/03/06 Javascript
几行代码轻松搞定jquery实现flash8类似的连接效果
2007/05/03 Javascript
JavaScript 类的定义和引用 JavaScript高级培训 自定义对象
2010/04/27 Javascript
禁用Tab键JS代码兼容Firefox和IE
2014/04/18 Javascript
jQuery表格排序组件-tablesorter使用示例
2014/05/26 Javascript
jQuery中attr()方法用法实例
2015/01/05 Javascript
四种参数传递的形式——URL,超链接,js,form表单
2015/07/24 Javascript
javascript实现无缝上下滚动特效
2015/12/16 Javascript
Javascript实现的SHA-256加密算法完整实例
2016/02/02 Javascript
jQuery插件制作的实例教程
2016/05/16 Javascript
Bootstrap表单布局样式源代码
2016/07/04 Javascript
BooStrap对导航条的改造实践小结
2016/09/21 Javascript
微信小程序实现点击按钮修改view标签背景颜色功能示例【附demo源码下载】
2017/12/06 Javascript
详解vue.js根据不同环境(正式、测试)打包到不同目录
2018/07/13 Javascript
layui实现点击按钮给table添加一行
2018/08/10 Javascript
vue select 获取value和lable操作
2020/08/28 Javascript
关于angular引入ng-zorro的问题浅析
2020/09/09 Javascript
python字典快速保存于读取的方法
2018/03/23 Python
python 爬虫一键爬取 淘宝天猫宝贝页面主图颜色图和详情图的教程
2018/05/22 Python
python文件操作之批量修改文件后缀名的方法
2018/08/10 Python
Python json模块dumps、loads操作示例
2018/09/06 Python
python 队列基本定义与使用方法【初始化、赋值、判断等】
2019/10/24 Python
Python如何访问字符串中的值
2020/02/09 Python
pandas 强制类型转换 df.astype实例
2020/04/09 Python
Java多线程实现四种方式原理详解
2020/06/02 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
浅谈amaze-ui中datepicker和datetimepicker注意的几点
2020/08/21 HTML / CSS
雅诗兰黛加拿大官网:Estee Lauder加拿大
2019/07/31 全球购物
哪些情况下不应该使用索引
2015/07/20 面试题
党校党性分析材料
2014/12/19 职场文书
2015年大学生工作总结
2015/04/21 职场文书
MySQL8.0升级的踩坑历险记
2021/11/01 MySQL