小編給大家分享一下如何基于python實現學生信息管理系統,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
學生信息管理系統負責編輯學生信息,適時地更新學生的資料。通過python實現一個簡單的學生信息管理系統
stuInfo=[]
def main():
while True:
printMenu() #打印菜單
key=int(input('請輸入功能對應的數字:'))
if key==1:
addInfo() #添加學生信息
elif key==2:
delInfo() #刪除學生信息
elif key==3:
modifystuInfo() #修改學生信息
elif key==4:
showstuInfo() #查看學生所有信息
elif key==5: #退出系統
quitConfirm=input('真的要退出嗎?(Yes or No):')
if quitConfirm=='Yes':
break #結束循環
else:
print('輸入有誤,請重新輸入')
#打印功能提示
def printMenu():
print('='*30)
print('學生信息管理系統V1.0')
print('1.添加學生信息')
print('2.刪除學生信息')
print('3.修改學生信息')
print('4.顯示所有學生信息')
print('5.退出系統')
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調用main()函數即可:

雖然以上代碼可以完成上述功能,但是每次調用程序里面的數據全部清除掉了,所以為了更好的模擬現實的學生信息管理系統,我們還需要將上次操作過后的數據保存下來,所以在上面的基礎上加上數據存儲的代碼。
stuInfo=[]
def main():
recoverData()
while True:
printMenu() #打印菜單
key=int(input('請輸入功能對應的數字:'))
if key==1:
addInfo() #添加學生信息
elif key==2:
delInfo() #刪除學生信息
elif key==3:
modifystuInfo() #修改學生信息
elif key==4:
showstuInfo() #查看學生所有信息
elif key==5:
saveToFile()
elif key==0: #退出系統
quitConfirm=input('真的要退出嗎?(Yes or No):')
if quitConfirm=='Yes':
break #結束循環
else:
print('輸入有誤,請重新輸入')
#打印功能提示
def printMenu():
print('='*30)
print('學生信息管理系統V1.0')
print('1.添加學生信息')
print('2.刪除學生信息')
print('3.修改學生信息')
print('4.顯示所有學生信息')
print('5.保存數據')
print('0.退出系統')
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()
#恢復數據
def recoverData():
global stuInfo
f=open('backup.data')
content=f.read()
stuInfo=eval(content)
f.close()
從結果可以看出,選擇操作4后可以顯示上次保留下來的學生信息。
以上是“如何基于python實現學生信息管理系統”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。