一篇文章教你用Python實(shí)現(xiàn)一個(gè)學(xué)生管理系統(tǒng)
片頭
Python看了差不多三四天吧,基本上給基礎(chǔ)看差不多了。寫(xiě)個(gè)管理系統(tǒng)吧,后續(xù)不出意外SQL、文件存儲(chǔ)版本都會(huì)更。
學(xué)習(xí)Python感想:
人生苦短,我用Python 人生苦短,我用Python 人生苦短,我用Python 人生苦短,我用Python Python實(shí)在太爽了
源碼:
使用Python3
''' 學(xué)生成績(jī)管理系統(tǒng) 時(shí)間:2021.9.9 作者:sunbeam ''' import time import os student_list = [] #定義一個(gè)列表類(lèi)型全局變量 ''' 列表里面存儲(chǔ)所有學(xué)生信息,列表里面每個(gè)元素是一個(gè)字典,字典里面存放每一個(gè)學(xué)生的個(gè)人信息,存儲(chǔ)結(jié)構(gòu)如下 [(姓名1,年齡1,學(xué)號(hào)1,手機(jī)號(hào)碼1),(姓名2,年齡2,學(xué)號(hào)2,手機(jī)號(hào)碼2)......] ''' def time_day(): print() print(time.strftime("%Y-%m-%d %H:%M:%S", time.localtime(time.time()))) #主菜單界面 def std_menu(): print("--------歡迎來(lái)到sunbeam的第一個(gè)python學(xué)生管理系統(tǒng)--------") print(" 1、添加學(xué)生信息 2、刪除學(xué)生信息 ") print(" 3、查找學(xué)生信息 4、修改學(xué)生信息 ") print(" 5、顯示所有學(xué)生 6、退出系統(tǒng) ") num=int(input("根據(jù)需求請(qǐng)輸入對(duì)應(yīng)的序號(hào):")) return num #添加學(xué)生信息 def std_add(): while 1: std_name = input("請(qǐng)輸入要添加的學(xué)生的姓名:") std_old = input("請(qǐng)輸入要添加的學(xué)生的年齡:") std_id = input("請(qǐng)輸入要添加的學(xué)生的學(xué)號(hào):") std_tel = input("請(qǐng)輸入要添加的學(xué)生的電話(huà)號(hào)碼:") global student_list # 判斷學(xué)生是否已存在,如果姓名和學(xué)號(hào)都重復(fù)說(shuō)明學(xué)生存在 for i in student_list: if (i['name'] == std_name) and (i['id'] == std_id): print("此學(xué)生信息已存在") return #如果學(xué)生信息不存在則添加學(xué)生信息 std_message = {} #創(chuàng)建一個(gè)空的字典 std_message['name']=std_name std_message['old']=std_old std_message['id']=std_id std_message['tel']=std_tel student_list.append(std_message) text=input("是否繼續(xù)添加:YES or NO") if text=='NO': os.system('cls') break else: os.system('cls') continue #查找學(xué)生信息 def std_find(): flag=0 while 1: find_name = input("請(qǐng)輸入你要查詢(xún)的學(xué)生的姓名:") global student_list for i in student_list: if (i['name'] == find_name): print("查詢(xún)到如下學(xué)生:") print("-------------------") print(f"姓名:{i['name']}") print(f"年齡:{i['old']}") print(f"學(xué)號(hào):{i['id']}") print(f"電話(huà):{i['tel']}") print("-------------------") flag=1 if flag==0: print("查無(wú)此人") lk=input("是否繼續(xù)查找:YES or NO") if lk=="NO": os.system('cls') break else: os.system('cls') continue #修改學(xué)生信息 def std_modify(): while 1: find_name=input("請(qǐng)輸入要修改的學(xué)生的學(xué)號(hào):") global student_list for i in student_list: if (i['id']==find_name): print("你要修改的學(xué)生信息如下:") print("-------------------") print(f"姓名:{i['name']}") print(f"年齡:{i['old']}") print(f"學(xué)號(hào):{i['id']}") print(f"電話(huà):{i['tel']}") print('-----------------') while 1: print(" 1、修改學(xué)生姓名 2、修改學(xué)生年齡 ") print(" 3、修改學(xué)生學(xué)號(hào) 4、修改學(xué)生電話(huà) ") modify_num = int(input('請(qǐng)輸入要修改的項(xiàng)目序號(hào):')) if modify_num==1: modify_name=input("請(qǐng)輸入要修改的學(xué)生的姓名:") i['name']=modify_name elif modify_num==2: modify_old=input("請(qǐng)輸入要修改的學(xué)生的年齡:") i['old']=modify_old elif modify_num==3: modify_id=input("請(qǐng)輸入要修改的學(xué)生的學(xué)號(hào):") i['id']=modify_id else: modify_tel=input("請(qǐng)輸入要修改的學(xué)的生電話(huà):") i['tel']=modify_tel print("是否繼續(xù)修改當(dāng)前學(xué)生信息:YES or NO") print('---------------------') modify_flag=input() if modify_flag=="NO": print("-----修改完成-----") break else: continue break print("是否繼續(xù)使用修改模塊功能:YES or NO") lag=input() if lag=="YES": os.system('cls') continue else: os.system('cls') break #顯示所有學(xué)生信息 def std_all(): global student_list print('姓名\t年齡\t學(xué)號(hào)\t電話(huà)') for i in student_list: print(f"{i['name']}\t{i['old']}\t{i['id']}\t{i['tel']}") #刪除函數(shù) def std_delete(): global student_list while 1: print("-----------------") del_num = input("請(qǐng)輸入要?jiǎng)h除的學(xué)生的學(xué)號(hào):") for i in student_list: if (i['id'] == del_num): student_list.remove(i) print("刪除成功") break else: print("查無(wú)此人") del_exit=input("是否退出:YES or NO") print("-----------------") if del_exit=='YES': os.system('cls') break else: os.system('cls') continue while 1: time_day() user_num=std_menu() if user_num==1: std_add() elif user_num==2: std_delete() elif user_num==3: std_find() elif user_num==4: std_modify() elif user_num==5: std_all() elif user_num==6: os.system('cls') exit_flag=input("是否退出:YES or NO") if exit_flag=='YES': print("感謝使用,bey-bey") break else: continue else: print("輸入無(wú)用序號(hào),請(qǐng)輸入菜單前序號(hào)。")
總結(jié)
本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
- Python實(shí)現(xiàn)一個(gè)完整學(xué)生管理系統(tǒng)
- 基于Python實(shí)現(xiàn)一個(gè)簡(jiǎn)單的學(xué)生管理系統(tǒng)
- 基于Python實(shí)現(xiàn)面向?qū)ο蟀鎸W(xué)生管理系統(tǒng)
- Python實(shí)現(xiàn)功能全面的學(xué)生管理系統(tǒng)
- Python實(shí)現(xiàn)學(xué)生管理系統(tǒng)并生成exe可執(zhí)行文件詳解流程
- Python實(shí)現(xiàn)學(xué)生管理系統(tǒng)(面向?qū)ο蟀?
- python實(shí)現(xiàn)學(xué)生管理系統(tǒng)源碼
- Python使用pyinstaller實(shí)現(xiàn)學(xué)生管理系統(tǒng)流程
相關(guān)文章
Python利用代碼計(jì)算2個(gè)坐標(biāo)之間的距離
這篇文章主要介紹了Python利用代碼計(jì)算2個(gè)坐標(biāo)之間的距離,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-08-08Python使用urllib2模塊抓取HTML頁(yè)面資源的實(shí)例分享
這篇文章主要介紹了Python使用urllib2模塊抓取HTML頁(yè)面資源的實(shí)例分享,將要抓取的頁(yè)面地址寫(xiě)在單獨(dú)的規(guī)則列表中方便組織和重復(fù)使用,需要的朋友可以參考下2016-05-05Python實(shí)現(xiàn)利用163郵箱遠(yuǎn)程關(guān)電腦腳本
這篇文章主要為大家詳細(xì)介紹了Python實(shí)現(xiàn)利用163郵箱遠(yuǎn)程關(guān)電腦腳本,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-02-02Python自動(dòng)化構(gòu)建工具scons使用入門(mén)筆記
這篇文章主要介紹了Python自動(dòng)化構(gòu)建工具scons使用入門(mén)筆記,本文講解了安裝scons、scons常用命令、scons使用示例等內(nèi)容,需要的朋友可以參考下2015-03-03詳解Python并發(fā)編程之從性能角度來(lái)初探并發(fā)編程
這篇文章主要介紹了詳解Python并發(fā)編程之從性能角度來(lái)初探并發(fā)編程,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2019-08-08