行业知识
Python 程序设计期末大作业
2026-11-10 03:24:43
来源:互联网转载
Python 程序设计期末大作业
学生信息管理系统(Python)
简介:基本信息管理和学生成绩管理。基本信息管理模块的主要功能有学生信息的添加、删除、修改、显示和学生数据的导入导出,学生成绩管理模块的主要功能有统计课程最高分、最低分和平均分。
一、功能模块:
基本信息管理和学生成绩管理。
基本信息管理模块的主要功能有学生信息的添加、删除、修改、显示和学生数据的导入导出,、
学生成绩管理模块的主要功能有统计课程最高分、最低分和平均分。
二、实现思路:
设计一个学生类,包含学号、姓名、语文成绩、数学成绩和英语成绩等数据成员。
引入OS模块,用于导入导出路径文件信息。
设计一个学生管理类,用于定义各个模块的具体功能函数。
设计一个主菜单,两个子菜单,分别管理学生基本信息和学生成绩信息。
三、运行功能演示:
学生信息管理系统启动后,首先进入系统主界面,等待用户输入命令选择相应的功能。
如果用户输入“info”命令,则进入学生基本信息管理子功能模块。
在学生基本信息管理界面,用户通过输入相应的命令进行学生基本信息的增、删、改、显示等操作。
学生基本信息菜单
添加学生信息
删除学生信息
修改学生信息
显示学生信息
如果用户输入“score”命令,则进入学生成绩管理子功能模块。
在学生成绩管理界面用户可选择相应的功能进行成绩处理。
平均分:
最高分:
最低分:
四、具体实现过程:
定义学生类:
class Student: def __init__(self,no,name,chinese,math,english): self.no = no self.name = name self.chinese = int(chinese) self.math = int(math) self.english = int(english)
定义学生管理类
class StudentList: def __init__(self): self.stulist = []
定义显示学生信息函数
在学生管理类下面定义显示学生信息函数:
def show(self): #显示学生信息 print('{:8}\t{:8}\t{:8}\t{:8}\t{:8}' .format('学号','姓名','语文','数学','英语')) for stu in self.stulist: print('{:8}\t{:8}\t{:').strip().lower() if s == 'load': fn = input('请输入要导入的文件名:') self.load(fn) elif s == 'show': self.show() elif s == 'insert': self.insert() elif s == 'delete': self.delete() elif s == 'update': self.update() elif s == 'save': fn = input('请输入要导出的文件名:') self.save(fn) elif s =='return': break else: print('输入错误') def scoreprocess(self): #学生成绩统计 print('学生成绩统计'.center(24,'=')) print('avg --------课程平均分') print('max --------课程最高分') print('min --------课程最低分') print('return --------返回') print(''.center(30,'=')) while True: s = input('score>').strip().lower() if s == 'avg': self.scoreavg() elif s == 'max': self.scoremax() elif s == 'min': self.scoremin() elif s == 'return': break else: print('输入错误') def main(self): #主控函数 while True: print('学生信息管理系统V1.0'.center(24,'=')) print('info -------学生基本信息管理') print('score -------学生成绩统计') print('exit -------退出系统') print(''.center(32,'=')) s = input('main>').strip().lower() if s == 'info': self.infoprocess() elif s == 'score': self.scoreprocess() elif s == 'exit': break else: print('输入错误') if __name__ == '__main__': st = StudentList() st.main() 系统完整源代码:
import osclass Student: def __init__(self, no, name, chinese, math, english): self.no = no self.name = name self.chinese = int(chinese) self.math = int(math) self.english = int(english)class StudentList: def __init__(self): self.stulist = [] def show(self): # 显示学生信息 print('{:8}\t{:8}\t{:8}\t{:8}\t{:8}' .format('学号', '姓名', '语文', '数学', '英语')) for stu in self.stulist: print('{:8}\t{:8}\t{:').strip().lower() if s == 'load': fn = input('请输入要导入的文件名:') self.load(fn) elif s == 'show': self.show() elif s == 'insert': self.insert() elif s == 'delete': self.delete() elif s == 'update': self.update() elif s == 'save': fn = input('请输入要导出的文件名:') self.save(fn) elif s == 'return': break else: print('输入错误') def scoreprocess(self): # 学生成绩统计 print('学生成绩统计'.center(24, '=')) print('avg --------课程平均分') print('max --------课程最高分') print('min --------课程最低分') print('return --------返回') print(''.center(30, '=')) while True: s = input('score>').strip().lower() if s == 'avg': self.scoreavg() elif s == 'max': self.scoremax() elif s == 'min': self.scoremin() elif s == 'return': break else: print('输入错误') def main(self): # 主控函数 while True: print('学生信息管理系统V1.0'.center(24, '=')) print('info -------学生基本信息管理') print('score -------学生成绩统计') print('exit -------退出系统') print(''.center(32, '=')) s = input('main>').strip().lower() if s == 'info': self.infoprocess() elif s == 'score': self.scoreprocess() elif s == 'exit': break else: print('输入错误')if __name__ == '__main__': st = StudentList() st.main()
上一篇:宝塔面板怎么内网穿透?