欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python實現(xiàn)學生信息管理系統(tǒng)(面向對象)

 更新時間:2022年06月05日 11:06:59   作者:Divetime  
這篇文章主要介紹了python實現(xiàn)面向對象版學生信息管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下

本文實例為大家分享了python實現(xiàn)學生信息管理系統(tǒng)的具體代碼,供大家參考,具體內容如下

1.主要內容

python種的.py文件如圖所示

第一個文件是用來管理文件中包中各個模塊的關系的文件

第二個文件是主函數文件,就是在主函數文件調用其余文件和模塊

第三個模塊式學生信息管理的模塊

第四個文件是用來存放學生數據的文件

第五個文件是學生信息的定義和顯示模塊

2.實現(xiàn)代碼

1)第一個文件是包中的管理文件自動生成且不需要修改

2)main.py文件

from managerSystem import *#導入模塊managerSystem,可以使用其中的功能

if __name__=='__main__':#定義只能在運行main.py文件中運行,才執(zhí)行的代碼
? ? 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#此方法在執(zhí)行時,不需要傳入任何參數
? ? def show_menu():
? ? ? ? print('請選擇如下序號:')
? ? ? ? print('1.添加學員')
? ? ? ? print('2.刪除學員')
? ? ? ? print('3.修改學員信息')
? ? ? ? print('4.查找學員')
? ? ? ? print('5.顯示學員信息')
? ? ? ? print('6.保存學員信息')
? ? ? ? print('7.退出系統(tǒng)')

? ? 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 != '': ?# 此時需要添加判斷文件是否為空,否則會發(fā)生報錯
? ? ? ? ? ? ? ? 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基礎之變量的相關知識總結

    Python基礎之變量的相關知識總結

    今天給大家?guī)淼氖顷P于Python的相關知識,文章圍繞著Python變量展開,文中有非常詳細的介紹及代碼示例,需要的朋友可以參考下
    2021-06-06
  • Python的Urllib庫的基本使用教程

    Python的Urllib庫的基本使用教程

    這篇文章主要介紹了Python的Urllib庫的基本使用教程,是用Python編寫爬蟲的必備知識,需要的朋友可以參考下
    2015-04-04
  • python 獲取本機ip地址的兩個方法

    python 獲取本機ip地址的兩個方法

    用python 獲取本機ip地址的多種方法,需要的朋友可以參考下
    2013-02-02
  • Python通過pymysql調用MySQL進行增刪改移查

    Python通過pymysql調用MySQL進行增刪改移查

    這篇文章主要介紹了Python通過pymysql調用MySQL,從而實現(xiàn)數據的增刪改移查功能,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2021-12-12
  • 一勞永逸徹底解決pip install慢的辦法

    一勞永逸徹底解決pip install慢的辦法

    經常在使用Python的時候需要安裝各種模塊,而pip是很強大的模塊安裝工具,這篇文章主要給大家介紹了一個可以一勞永逸徹底解決pip install慢的辦法,需要的朋友可以參考下
    2021-05-05
  • python使用requests.session模擬登錄

    python使用requests.session模擬登錄

    最近開發(fā)一套接口,寫個Python腳本,使用requests.session模擬一下登錄.本文通過實例代碼給大家介紹python使用requests.session模擬登錄,感興趣的朋友跟隨小編一起看看吧
    2019-08-08
  • pygame游戲之旅 添加游戲界面按鍵圖形

    pygame游戲之旅 添加游戲界面按鍵圖形

    這篇文章主要為大家詳細介紹了pygame游戲之旅的第10篇,教大家如何添加游戲界面按鍵圖形,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-11-11
  • python gensim使用word2vec詞向量處理中文語料的方法

    python gensim使用word2vec詞向量處理中文語料的方法

    這篇文章主要介紹了python gensim使用word2vec詞向量處理中文語料的方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-07-07
  • Python Pygame實戰(zhàn)之水果忍者游戲的實現(xiàn)

    Python Pygame實戰(zhàn)之水果忍者游戲的實現(xiàn)

    大家還記得水果忍者這個游戲嗎?想當年,這也是個風靡全國的游戲,基本每個人都玩過。今天小編就用Python中的Pygame庫復刻這一經典游戲,需要的可以參考一下
    2022-02-02
  • Python中出現(xiàn)"No?module?named?'requests'"的圖文解決辦法

    Python中出現(xiàn)"No?module?named?'requests'"

    這篇文章主要給大家介紹了關于Python中出現(xiàn)"No?module?named?'requests'"的解決辦法,"No?module?named?requests"是Python報錯提示,意味著你在使用某個Python程序或腳本時,沒有找到名為requests的模塊,需要的朋友可以參考下
    2023-11-11

最新評論