您好,登錄后才能下訂單哦!
今天小編給大家分享一下python面向對象怎么實現學生信息管理系統的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
python種的.py文件如圖所示
第一個文件是用來管理文件中包中各個模塊的關系的文件
第二個文件是主函數文件,就是在主函數文件調用其余文件和模塊
第三個模塊式學生信息管理的模塊
第四個文件是用來存放學生數據的文件
第五個文件是學生信息的定義和顯示模塊
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面向對象怎么實現學生信息管理系統”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。