基于Python实现的简易学生管理系统的代码是什么
Admin 2022-06-30 群英技术资讯 527 次浏览
本文实例为大家分享了python实现学生管理系统的具体代码,供大家参考,具体内容如下
import os stu_list = [] def show_menu(): print('1.添加学生') print('2.删除学生') print('3.修改学生信息') print('4.查询单个学生信息') print('5.查询所有学生信息') print('6.退出系统') def insert_student(): name = input('请输入学生名字:') for stu in stu_list: if stu['name'] == name: print('.........学生信息已存在........') return age = input('请输入学生年龄:') gender = input('请输入学生性别:') stu_dict = {'name': name, 'age': int(age), 'gender': gender} stu_list.append(stu_dict) print("学生信息添加成功!") def remove_student(): name = input('请输入要操作的学生的名字:') for stu in stu_list: if stu['name'] == name: stu_list.remove(stu) print('删除成功!') break else: print('........该学生信息不存在,无法删除.........') def modify_student(): name = input('请输入要操作的学生的名字:') for stu in stu_list: if stu['name'] == name: stu['age'] = int(input('请输入新的年龄:')) print('修改成功!') break else: print('........该学生信息不存在,无法修改.........') def search_student(): name = input('请输入要操作的学生的名字:') for stu in stu_list: if stu['name'] == name: print(f'姓名:{stu["name"]},年龄:{stu["age"]},性别:{stu["gender"]}') break else: print('........该学生信息不存在.......') def show_all_stu(): if len(stu_list): for stu in stu_list: print(f'姓名:{stu["name"]},年龄:{stu["age"]},性别:{stu["gender"]}') else: print("目前没有学生信息!") def save(): f = open('student.txt', 'w') f.write(str(stu_list)) f.close() def read_file(): global stu_list if os.path.exists('student.tct'): f = open('student.txt', 'r', encoding='utf-8') buf = f.read() if buf: stu_list = eval(buf) f.close() def main(): read_file() while True: show_menu() opt = input('请输入用来选择的编号:') if opt == '1': print('1.添加学生') insert_student() elif opt == '2': print('2.删除学生') remove_student() elif opt == '3': print('3.修改单个学生信息') modify_student() elif opt == '4': print('查询单个学生信息') search_student() elif opt == '5': print('5.查询所有学生信息') show_all_stu() elif opt == '6': print('欢迎下次使用本系统') save() break else: print('输入有误,请重新输入') continue input('........回车键继续操作........') main()
1.工程文件
2.main.py
import student_manage_sysytem as sms if __name__ == '__main__': stu_sms = sms.StudenManagerSystem() stu_sms.start()
3.student.py
class Student(): def __init__(self, stu_id, name, age, gender): self.sut_id = stu_id self.name = name self.age = age self.gender = gender def __str__(self): return f"{self.sut_id},{self.name},{self.age},{self.gender}"
4.student_manage_system.py
import student class StudenManagerSystem(): def __init__(self): self.stu_dict = {} @staticmethod def __show_menu(): print('1.添加学生') print('2.删除学生') print('3.修改学生信息') print('4.查询单个学生信息') print('5.查询所有学生信息') print('6.退出系统') def __insert_student(self): stu_id = input('请输入学生学号:') if stu_id in self.stu_dict: print('学生信息已经存在,不需要重复添加') return name = input('请输入学生名字:') age = input('请输入学生年龄:') gender = input('请输入学生性别:') stu = student.Student(stu_id, name, age, gender) self.stu_dict[stu_id] = stu def __removw_student(self): stu_id = input('请输入学号:') if stu_id in self.stu_dict: del self.stu_dict[stu_id] print('学生已经删除') else: print('学生信息不存在,无法删除') def __modify_student(self): stu_id = input('请输入学号:') if stu_id in self.stu_dict: stu = self.stu_dict[stu_id] stu.age = input('请输入新的年龄:') print('信息已经修改完毕') else: print('学生信息不存在,无法修改') def __search_student(self): stu_id = input('请输入学号:') if stu_id in self.stu_dict: stu = self.stu_dict[stu_id] print(stu) else: print('学生信息不存在') def __save(self): f = open('student.txt', 'w', encoding='utf-8') for stu in self.stu_dict.values(): f.write(str(stu) + '\n') f.close() def __load_info(self): try: f = open('student.txt', 'r', encoding='utf-8') buf_list = f.readlines() for buf in buf_list: buf = buf.strip() info_list = buf.split(',') stu = student.Student(*info_list) stu_id = info_list[0] self.stu_dict[stu_id] = stu f.close() except Exception: pass def __show_all_info(self): for stu in self.stu_dict.values(): print(stu) def start(self): self.__load_info() while True: self.__show_menu() opt = input('请输入用来选择的编号:') if opt == '1': print('1.添加学生') self.__insert_student() elif opt == '2': print('2.删除学生') self.__removw_student() elif opt == '3': print('3.修改单个学生信息') self.__modify_student() elif opt == '4': print('查询单个学生信息') self.__search_student() elif opt == '5': print('5.查询所有学生信息') self.__show_all_info() elif opt == '6': self.__save() print('欢迎下次使用本系统') break else: print('输入有误,请重新输入') continue input('........回车键继续操作........')
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
VSCode(全称:Visual Studio Code)是一款由微软开发的跨平台免费源代码编辑器。VSCode 开发环境非常简单易用,仅需要安装相关的插件进行简易的配置就可以与原有的python环境组成一套具有简单的代码调试运行的开发工具。对于轻量级的python开发和python学习是比较友好的。优秀的代码提示和更多插件功能让VSCode的使用体验不亚于知名pythonIDE—pycharm。_来自Python3 教程,w3cschool编程狮。
这篇文章主要介绍了Python中的字符串相似度,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
这篇文章主要介绍了Python Matplotlib marker 标记详解,Matplotlib,风格类似 Matlab 的基于 Python 的图表绘图系统,详细内容需要的小伙伴可以参考一下
本文主要介绍了Python命令行库click的具体使用,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
这篇文章主要介绍了使用python tkinter实现各种个样的撩妹鼠标拖尾效果,本文通过实例代码,给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008