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处理文本文件实现生成指定格式文件的方法
Jul 31 Python
跟老齐学Python之赋值,简单也不简单
Sep 24 Python
Python基于DES算法加密解密实例
Jun 03 Python
pygame游戏之旅 调用按钮实现游戏开始功能
Nov 21 Python
在numpy矩阵中令小于0的元素改为0的实例
Jan 26 Python
python实现图片压缩代码实例
Aug 12 Python
让你的Python代码实现类型提示功能
Nov 19 Python
解决python replace函数替换无效问题
Jan 18 Python
pytorch 修改预训练model实例
Jan 18 Python
在python中求分布函数相关的包实例
Apr 15 Python
Ubuntu 20.04安装Pycharm2020.2及锁定到任务栏的问题(小白级操作)
Oct 29 Python
Python打包为exe详细教程
May 18 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使用异步调用获取数据时出现(错误c00ce56e导致此项操作无法完成)
2013/07/03 PHP
php增删改查示例自己写的demo
2013/09/04 PHP
PHP实现简单搜歌的方法
2015/07/28 PHP
php实现概率性随机抽奖代码
2016/01/02 PHP
thinkPHP5.0框架环境变量配置方法
2017/03/17 PHP
PHP+Apache实现二级域名之间共享cookie的方法
2019/07/24 PHP
PHP使用openssl扩展实现加解密方法示例
2020/02/20 PHP
jQuery 源代码显示控件 (Ajax加载方式).
2009/05/18 Javascript
javascript新建标签,判断键盘输入,以及判断焦点(示例代码)
2013/11/25 Javascript
封装好的一个万能检测表单的方法
2015/01/21 Javascript
Javascript之String对象详解
2016/06/08 Javascript
手机端 HTML5使用photoswipe.js仿微信朋友圈图片放大效果
2016/08/25 Javascript
基于jQuery实现简单人工智能聊天室
2017/02/10 Javascript
Angular.JS内置服务$http对数据库的增删改使用教程
2017/05/07 Javascript
JS动画定时器知识总结
2018/03/23 Javascript
解决vue-cli脚手架打包后vendor文件过大的问题
2018/09/27 Javascript
JS温故而知新之变量提升和时间死区
2019/01/27 Javascript
小程序测试后台服务的方法(ngrok)
2019/03/08 Javascript
TypeScript 运行时类型检查补充工具
2020/09/28 Javascript
跟老齐学Python之一个免费的实验室
2014/09/14 Python
Python中datetime模块参考手册
2017/01/13 Python
Flask数据库迁移简单介绍
2017/10/24 Python
Python简单实现控制电脑的方法
2018/01/22 Python
python实现DEM数据的阴影生成的方法
2019/07/23 Python
python模拟键盘输入 切换键盘布局过程解析
2019/08/15 Python
python2和python3实现在图片上加汉字的方法
2019/08/22 Python
Python(PyS60)实现简单语音整点报时
2019/11/18 Python
提高python代码运行效率的一些建议
2020/09/29 Python
英国豪华家具和经典家居饰品购物网站:OKA
2020/06/05 全球购物
财务与信息服务专业推荐信
2013/11/28 职场文书
人事部专员岗位职责
2014/03/04 职场文书
个人投资计划书
2014/05/01 职场文书
90行Python代码开发个人云盘应用
2021/04/20 Python
基于Java的MathML转图片的方法(示例代码)
2021/06/23 Java/Android
Python os和os.path模块详情
2022/04/02 Python
SQL解决未能删除约束问题drop constraint
2022/05/30 SQL Server