您现在的位置是:网站首页> 编程资料编程资料
python实现学生信息管理系统(面向对象)_python_
2023-05-26
296人已围观
简介 python实现学生信息管理系统(面向对象)_python_
本文实例为大家分享了python实现学生信息管理系统的具体代码,供大家参考,具体内容如下
1.主要内容
python种的.py文件如图所示
第一个文件是用来管理文件中包中各个模块的关系的文件
第二个文件是主函数文件,就是在主函数文件调用其余文件和模块
第三个模块式学生信息管理的模块
第四个文件是用来存放学生数据的文件
第五个文件是学生信息的定义和显示模块

2.实现代码
1)第一个文件是包中的管理文件自动生成且不需要修改
2)main.py文件
from managerSystem import *#导入模块managerSystem,可以使用其中的功能 if __name__=='__main__':#定义只能在运行main.py文件中运行,才执行的代码 student_manager=StudentManager() student_manager.run()
3)学生信息管理模块
from student import * class StudentManager(object): def __init__(self): self.student_list = [] def run(self): self.load_student() while True: self.show_menu() ret = int(input('请输入数字1——7:')) if ret == 1: self.add_student() elif ret == 2: self.del_student() elif ret == 3: self.modify_student() elif ret == 4: self.search_student() elif ret == 5: self.show_student() elif ret == 6: self.save_student() elif ret == 7: break @staticmethod#此方法在执行时,不需要传入任何参数 def show_menu(): print('请选择如下序号:') print('1.添加学员') print('2.删除学员') print('3.修改学员信息') print('4.查找学员') print('5.显示学员信息') print('6.保存学员信息') print('7.退出系统') def add_student(self): name = input('请输入学员姓名:') gender = input('请输入学员性别:') tel = input('请输入电话号码:') student = Student(name, gender, tel) self.student_list.append(student) # print(self.student_list) # print(student) def del_student(self): del_name = input('请输入需要删除的学员姓名:') for i in self.student_list: if i.name == del_name: self.student_list.remove(i) break else: print('查无此人') # print(self.student_list) def modify_student(self): modify_name = input('请输入需要修改的学员姓名:') for i in self.student_list: if i.name == modify_name: i.name = input('亲输入需要修改的学员姓名:') i.gender = input('请输入需要修过的学员性别:') i.tel = input('请输入需要修改的学员手机号:') print(f'修改的信息为{i.name},{i.gender},{i.tel}') break else: print('需要修改的学员不存在') def search_student(self): searce_name = input('请输入需要查询的学员姓名:') for i in self.student_list: if i.name == searce_name: print(f'姓名:{i.name},性别:{i.gender},手机号:{i.tel}') break else: print('查无此人') def show_student(self): print('姓名:\t性别:\t手机号:') for i in self.student_list: print(f'{i.name}\t{i.gender}\t{i.tel}') def save_student(self): f = open('student.data', 'w') new_list = [i.__dict__ for i in self.student_list] print(new_list) f.write(str(new_list)) f.close() def load_student(self): # 1. 打开文件:尝试r打开,如果有异常w try: f = open('student.data', 'r') except: f = open('student.data', 'w') else: # 2. 读取数据:文件读取出的数据是字符串还原列表类型;[{}] 转换 [学员对象] data = f.read() # 字符串 if data != '': # 此时需要添加判断文件是否为空,否则会发生报错 new_list = eval(data) self.student_list = [Student(i['name'], i['gender'], i['tel']) for i in new_list] finally: # 3. 关闭文件 f.close()4)存储数据的文件不需要编辑
5)student.py文件主要是用来存放学生的主要信息的模块,以及可以查看学生信息的方法
class Student(object): def __init__(self, name, gender, tel): self.name = name self.gender = gender self.tel = tel def __str__(self): return f'{self.name},{self.gender}, {self.tel}'以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
您可能感兴趣的文章:
相关内容
- Python使用pyecharts控件绘制图表_python_
- Python使用openpyxl模块处理Excel文件_python_
- Python中requests库的用法详解_python_
- Python加密与解密模块hashlib与hmac_python_
- Python日志模块logging用法_python_
- Python使用Beautiful Soup(BS4)库解析HTML和XML_python_
- Python四款GUI图形界面库介绍_python_
- Python序列化模块JSON与Pickle_python_
- python虚拟机解释器及运行过程_python_
- Python实现员工信息管理系统_python_
