python實現(xiàn)學(xué)生信息管理系統(tǒng)(面向?qū)ο?
本文實例為大家分享了python實現(xiàn)學(xué)生信息管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
1.主要內(nèi)容
python種的.py文件如圖所示
第一個文件是用來管理文件中包中各個模塊的關(guān)系的文件
第二個文件是主函數(shù)文件,就是在主函數(shù)文件調(diào)用其余文件和模塊
第三個模塊式學(xué)生信息管理的模塊
第四個文件是用來存放學(xué)生數(shù)據(jù)的文件
第五個文件是學(xué)生信息的定義和顯示模塊
2.實現(xiàn)代碼
1)第一個文件是包中的管理文件自動生成且不需要修改
2)main.py文件
from managerSystem import *#導(dǎo)入模塊managerSystem,可以使用其中的功能 if __name__=='__main__':#定義只能在運行main.py文件中運行,才執(zhí)行的代碼 ? ? student_manager=StudentManager() ? ? student_manager.run()
3)學(xué)生信息管理模塊
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('請輸入數(shù)字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#此方法在執(zhí)行時,不需要傳入任何參數(shù) ? ? def show_menu(): ? ? ? ? print('請選擇如下序號:') ? ? ? ? print('1.添加學(xué)員') ? ? ? ? print('2.刪除學(xué)員') ? ? ? ? print('3.修改學(xué)員信息') ? ? ? ? print('4.查找學(xué)員') ? ? ? ? print('5.顯示學(xué)員信息') ? ? ? ? print('6.保存學(xué)員信息') ? ? ? ? print('7.退出系統(tǒng)') ? ? def add_student(self): ? ? ? ? name = input('請輸入學(xué)員姓名:') ? ? ? ? gender = input('請輸入學(xué)員性別:') ? ? ? ? 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('請輸入需要刪除的學(xué)員姓名:') ? ? ? ? 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('請輸入需要修改的學(xué)員姓名:') ? ? ? ? for i in self.student_list: ? ? ? ? ? ? if i.name == modify_name: ? ? ? ? ? ? ? ? i.name = input('親輸入需要修改的學(xué)員姓名:') ? ? ? ? ? ? ? ? i.gender = input('請輸入需要修過的學(xué)員性別:') ? ? ? ? ? ? ? ? i.tel = input('請輸入需要修改的學(xué)員手機號:') ? ? ? ? ? ? ? ? print(f'修改的信息為{i.name},{i.gender},{i.tel}') ? ? ? ? ? ? ? ? break ? ? ? ? else: ? ? ? ? ? ? print('需要修改的學(xué)員不存在') ? ? def search_student(self): ? ? ? ? searce_name = input('請輸入需要查詢的學(xué)員姓名:') ? ? ? ? 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. 讀取數(shù)據(jù):文件讀取出的數(shù)據(jù)是字符串還原列表類型;[{}] 轉(zhuǎn)換 [學(xué)員對象] ? ? ? ? ? ? data = f.read() ?# 字符串 ? ? ? ? ? ? if data != '': ?# 此時需要添加判斷文件是否為空,否則會發(fā)生報錯 ? ? ? ? ? ? ? ? new_list = eval(data) ? ? ? ? ? ? ? ? self.student_list = [Student(i['name'], i['gender'], i['tel']) for i in new_list] ? ? ? ? finally: ? ? ? ? ? ? # 3. 關(guān)閉文件 ? ? ? ? ? ? f.close()
4)存儲數(shù)據(jù)的文件不需要編輯
5)student.py文件主要是用來存放學(xué)生的主要信息的模塊,以及可以查看學(xué)生信息的方法
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}'
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- python學(xué)生信息管理系統(tǒng)(完整版)
- Python實現(xiàn)GUI學(xué)生信息管理系統(tǒng)
- python實現(xiàn)學(xué)生信息管理系統(tǒng)
- python實現(xiàn)簡易學(xué)生信息管理系統(tǒng)
- python實現(xiàn)外賣信息管理系統(tǒng)
- python學(xué)生信息管理系統(tǒng)
- python學(xué)生信息管理系統(tǒng)實現(xiàn)代碼
- python實現(xiàn)簡單學(xué)生信息管理系統(tǒng)
- python學(xué)生信息管理系統(tǒng)(初級版)
- 使用python實現(xiàn)學(xué)生信息管理系統(tǒng)
相關(guān)文章
Python基礎(chǔ)之變量的相關(guān)知識總結(jié)
今天給大家?guī)淼氖顷P(guān)于Python的相關(guān)知識,文章圍繞著Python變量展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下2021-06-06Python通過pymysql調(diào)用MySQL進行增刪改移查
這篇文章主要介紹了Python通過pymysql調(diào)用MySQL,從而實現(xiàn)數(shù)據(jù)的增刪改移查功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2021-12-12python gensim使用word2vec詞向量處理中文語料的方法
這篇文章主要介紹了python gensim使用word2vec詞向量處理中文語料的方法,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-07-07Python Pygame實戰(zhàn)之水果忍者游戲的實現(xiàn)
大家還記得水果忍者這個游戲嗎?想當年,這也是個風(fēng)靡全國的游戲,基本每個人都玩過。今天小編就用Python中的Pygame庫復(fù)刻這一經(jīng)典游戲,需要的可以參考一下2022-02-02Python中出現(xiàn)"No?module?named?'requests'"
這篇文章主要給大家介紹了關(guān)于Python中出現(xiàn)"No?module?named?'requests'"的解決辦法,"No?module?named?requests"是Python報錯提示,意味著你在使用某個Python程序或腳本時,沒有找到名為requests的模塊,需要的朋友可以參考下2023-11-11