日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

python2.面向对象.学生管理

發布時間:2023/12/10 python 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python2.面向对象.学生管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

main.py(程序主入口)

#1.導入管理系統模塊

from mangerSystem import *

#2.啟動管理系統

#保證是當前文件運行才啟動管理系統:if -- 創建對象并調用run()方法

if __name__=="__main__":

??? student_manager=StudentManager()

??? student_manager.run()

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}'

# aa=Student("aa","女",111)

# print(aa)

mangerSystem

from? student import *

class StudentManager(object):

??? def __init__(self):

??????? #存儲學員數據 -- 列表

??????? self.student__list=[]

??? #一.程序入口函數

??? def run(self):

??????? #1.加載文件里的學員數據

??????? # self.load_student()

??????? while True:

???? ???????#2.顯示功能菜單

??????????? self.showmenu()

??????????? #3.用戶輸入目標功能序號

??????????? menu_num=int(input("請輸入你需要的功能序號:"))

??????? #4.根據用戶輸入的序號執行不同的功能 -- 如果用戶輸入1,執行添加

??????????? if menu_num==1:

??????????????? #添加學員

??????????????? self.add_student()

??????????? elif menu_num==2:

??????????????? #刪除學員

??????????????? self.del_student()

??????????? elif menu_num==3:

??????????????? #修改學員信息

??????????????? self.modif_student()

??????????? elif menu_num==4:

??????????????? #查詢學員信息

??????????????? self.search_student()

??????????? elif menu_num==5:

??????????????? #顯示所有學員信息

??????????????? self.show_student()

??????????? elif menu_num==6:

??????????????? #保存學員信息

??????????????? self.save_student()

??????????? elif menu_num==7:

??????????????? #退出系統--退出循環

? ??????????????# break

??????????????? self.load_student()

??????????? elif menu_num == 8:

??????????????? # 退出系統--退出循環

??????????????? # break

??????????????? # 程序想要結束,退出終止while True -- break

??????????????? exit_flag = input("確定要退出嗎?yes or no")

???????? ???????if exit_flag == 'yes':

??????????????????? print("退出系統")

??????????????????? break

??????????? else:

??????????????? print("輸入的功能序號有誤!")

??? #二.系統功能函數

??? #2.1顯示功能菜單 -- 打印序號功能對應關系--靜態

??? @staticmethod

??? def showmenu():

??????? print("請選擇如下功能:")

??????? print("1:添加學員")

??????? print("2:刪除學員")

??????? print("3:修改學員信息")

??????? print("4:查詢學員信息")

??????? print("5:顯示所有學員信息")

??????? print("6:保存學員信息")

??????? print("7:加載學員信息")

??????? print("8:退出系統")

??? # 2.2添加學員

??? def add_student(self):

?????? ?# print("添加學員")

??????? #1.用戶輸入姓名,性別,手機號

??????? name=input("請輸入你的姓名:")

??????? gender=input("請輸入你的性別:")

??????? tel=input("請輸入你的手機號:")

?#2.創建學員對象--類,類在student文件里面 先導入student模塊,在創建對象

??????? student=Student(name,gender,tel)

??????? #3.將該對象添加到學員列表

??????? self.student__list.append(student)

??????? # print(123)

??????? # print(self.student__list)

??????? print(student)

??? # 2.3刪除學員

??? def del_student(self):

??????? # print("刪除學員")

??????? #1.用戶輸入目標學員姓名

??????? del_name=input("請輸入要刪除的學員姓名:")

?? ?????#2.遍歷學員列表,如果用戶輸入的學員存在,則刪除學員對象。否則提示學員不存在

??????? for i in self.student__list:

??????????? if del_name==i.name:

??????????????? #刪除學員對象

??????????????? # self.student__list.remove(i)

??????????????? break

??????? else:

??????????? #循環正常結束執行代碼:循環結束都沒有刪除任何一個對象,所以說明用戶輸入的目標學員不存在。

??????????? print("查無此人!")

??????? print(self.student__list)

??? # 2.4修改學員信息

??? def modif_student(self):

??????? #print("修改學員信息")

??????? # 1.用戶輸入目標學員姓名

??????? modify_name=input("請輸入要修改的學員姓名:")

??????? #2遍歷列表數據,如果學員存在,修改姓名,性別,手機號。否則提示學員不存在

??????? for i in self.student__list:

??????????? if modify_name==i.name:

??????????????? i.name=input("姓名:")

??????????????? i.gender=input("性別:")

??????????????? i.tel=input("手機號:")

??????????????? print(f"修改學員信息成功,姓名:{i.name},性別:{i.gender},手機號:{i.tel}")

??????????????? break

??????? else:

??????????? print("查無此人!")

??? # 2.5查詢學員信息

??? def search_student(self):

??????? # print("查詢學員信息")

??????? #1.用戶輸入目標學員姓名

??????? search_name=input("請輸入你要搜索的學員姓名:")

??????? #2.遍歷列表。如果學員存在打印學員信息,否則提示學員不存在

??????? for i in self.student__list:

??????????? if search_name==i.name:

??????????????? print(f"姓名是:{i.name},性別是:{i.gender},手機號是:{i.tel}")

??????????????? break

??????? else:

??????????? print("查無此人!")

??? # 2.6顯示所有學員信息

??? def show_student(self):

??????? # print("顯示所有學員信息")

??????? #1.打印表頭

??????? print("姓名\t性別\t手機號")

??????? #2.打印學員數據

??????? for i in self.student__list:

??????????? print(f"{i.name}\t{i.gender}\t{i.tel}")

??? # 2.7保存學員信息

??? def save_student(self):

? ??????# print("保存學員信息")

??????? #1.打印文件

??????? f=open("student.data","a")

??????? #2.文件寫入數據

??????? #2.1[學員對象]轉換成[字典]

??????? new_list=[i.__dict__ for i in self.student__list]

??????? #2.2文件寫入 字符串數據

??????? f.write(str(new_list))

??????? #3.關閉文件

??????? f.close()

??? # 2.8加載學員信息

??? def load_student(self):

??? #???? print("加載學員信息")

??????? with open("student.data","r") as file:

??????????? showAll=file.read()

??????????? print(showAll,"\n")

總結

以上是生活随笔為你收集整理的python2.面向对象.学生管理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。