基于python實現(xiàn)學生信息管理系統(tǒng)
學生信息管理系統(tǒng)負責編輯學生信息,適時地更新學生的資料。下面通過python實現(xiàn)一個簡單的學生信息管理系統(tǒng)
stuInfo=[] def main(): while True: printMenu() #打印菜單 key=int(input('請輸入功能對應的數(shù)字:')) if key==1: addInfo() #添加學生信息 elif key==2: delInfo() #刪除學生信息 elif key==3: modifystuInfo() #修改學生信息 elif key==4: showstuInfo() #查看學生所有信息 elif key==5: #退出系統(tǒng) quitConfirm=input('真的要退出嗎?(Yes or No):') if quitConfirm=='Yes': break #結(jié)束循環(huán) else: print('輸入有誤,請重新輸入') #打印功能提示 def printMenu(): print('='*30) print('學生信息管理系統(tǒng)V1.0') print('1.添加學生信息') print('2.刪除學生信息') print('3.修改學生信息') print('4.顯示所有學生信息') print('5.退出系統(tǒng)') print('='*30) #添加學生信息 def addInfo(): newname=input('輸入新學生的名字:') newsex=input('輸入新學生的性別:') newphone=input('輸入新學生的號碼:') newInfo={} newInfo['name']=newname newInfo['sex']=newsex newInfo['phone']=newphone stuInfo.append(newInfo) #刪除學生信息 def delInfo(): delNum=int(input('請輸入要刪除的序號:'))-1 del stuInfo[delNum] #修改學生信息 def modifystuInfo(): stuId=int(input('請輸入要修改的學生序號:'))-1 newname=input('輸入修改后學生的名字:') newsex=input('輸入修改后學生的性別:') newphone=input('輸入修改后學生的號碼:') stuInfo[stuId]['name']=newname stuInfo[stuId]['sex']=newsex stuInfo[stuId]['phone']=newphone #顯示所有學生信息 def showstuInfo(): print('='*30) print('學生信息如下:') print('='*30) i=1 for tempInfo in stuInfo: print('%d %s %s %s'%(i,tempInfo['name'],tempInfo['sex'],tempInfo['phone'])) i+=1
調(diào)用main()函數(shù)即可:
雖然以上代碼可以完成上述功能,但是每次調(diào)用程序里面的數(shù)據(jù)全部清除掉了,所以為了更好的模擬現(xiàn)實的學生信息管理系統(tǒng),我們還需要將上次操作過后的數(shù)據(jù)保存下來,所以在上面的基礎上加上數(shù)據(jù)存儲的代碼。
stuInfo=[] def main(): recoverData() while True: printMenu() #打印菜單 key=int(input('請輸入功能對應的數(shù)字:')) if key==1: addInfo() #添加學生信息 elif key==2: delInfo() #刪除學生信息 elif key==3: modifystuInfo() #修改學生信息 elif key==4: showstuInfo() #查看學生所有信息 elif key==5: saveToFile() elif key==0: #退出系統(tǒng) quitConfirm=input('真的要退出嗎?(Yes or No):') if quitConfirm=='Yes': break #結(jié)束循環(huán) else: print('輸入有誤,請重新輸入') #打印功能提示 def printMenu(): print('='*30) print('學生信息管理系統(tǒng)V1.0') print('1.添加學生信息') print('2.刪除學生信息') print('3.修改學生信息') print('4.顯示所有學生信息') print('5.保存數(shù)據(jù)') print('0.退出系統(tǒng)') print('='*30) #添加學生信息 def addInfo(): newname=input('輸入新學生的名字:') newsex=input('輸入新學生的性別:') newphone=input('輸入新學生的號碼:') newInfo={} newInfo['name']=newname newInfo['sex']=newsex newInfo['phone']=newphone stuInfo.append(newInfo) #刪除學生信息 def delInfo(): delNum=int(input('請輸入要刪除的序號:'))-1 del stuInfo[delNum] #修改學生信息 def modifystuInfo(): stuId=int(input('請輸入要修改的學生序號:'))-1 newname=input('輸入修改后學生的名字:') newsex=input('輸入修改后學生的性別:') newphone=input('輸入修改后學生的號碼:') stuInfo[stuId]['name']=newname stuInfo[stuId]['sex']=newsex stuInfo[stuId]['phone']=newphone #顯示所有學生信息 def showstuInfo(): print('='*30) print('學生信息如下:') print('='*30) i=1 for tempInfo in stuInfo: print('%d %s %s %s'%(i,tempInfo['name'],tempInfo['sex'],tempInfo['phone'])) i+=1 #保存學生信息 def saveToFile(): f=open('backup.data','w') f.write(str(stuInfo)) f.close() #恢復數(shù)據(jù) def recoverData(): global stuInfo f=open('backup.data') content=f.read() stuInfo=eval(content) f.close()
從結(jié)果可以看出,選擇操作4后可以顯示上次保留下來的學生信息。
更多學習資料請關注專題《管理系統(tǒng)開發(fā)》。
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Python3.x檢查內(nèi)存可用大小的兩種實現(xiàn)
本文將介紹如何使用Python 3實現(xiàn)檢查Linux服務器內(nèi)存可用大小的方法,包括使用Python標準庫實現(xiàn)和使用Linux命令實現(xiàn)兩種方式,感興趣可以了解一下2023-05-05Swift 3.0在集合類數(shù)據(jù)結(jié)構上的一些新變化總結(jié)
與字符串類似,Swift3在數(shù)組和字典等結(jié)構上也有改動,這里我們就來整理Swift 3.0在集合類數(shù)據(jù)結(jié)構上的一些新變化總結(jié):2016-07-07python使用matplotlib的savefig保存時圖片保存不完整的問題
這篇文章主要介紹了python使用matplotlib的savefig保存時圖片保存不完整的問題,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2021-01-01