一、項目分析
1、首先定義一個存放基礎學生信息列表
格式:list = [{學號:姓名,年齡:num,成績:num },{……}]
student1 = [\
{1:"jam",'age':17,'socer':99},
{2:'kol','age':18,'socer':89},
{3:'avlir','age':19,'socer':100}]
2、先搭建框架(主函數main())
if __name__ == '__main__':
while True:
menu()
key = input("輸入選項數字 查詢/輸入 信息:")
if key == '1':
lookup() #打印指定學生信息
elif key == '2':
append() #添加新的學生信息
elif key == '3':
delete() #刪除指定學生信息
elif key == '4':
allinformation() #打印所有信息
elif key == '5':
revise() #修改指定學生信息
elif key == '6':
save() #保存信息
elif key == '0':
print("確定退出?")
exit = input("輸入yes退出:")
if exit == 'yes':
break
else:
print("輸入錯誤,返回 ")
3、搭建好框架之后,這時候發(fā)現(xiàn)需要一個菜單界面(menu())
#頁面
def menu():
print('-'*30)
print("歡迎來到學生管理系統(tǒng)")
print("1.輸入學號查詢成績")
print("2.添加學生信息")
print("3.刪除學生信息")
print("4.打印所有學生信息")
print("5.修改學生信息")
print("6.保存學生信息到指定文件")
print("0.退出系統(tǒng)")
print("-"*30)
4、接下來就是查詢指定學生信息(lookup())。
列表下標從0開始,所以這里在輸入學號后面加了 “-1”
#打印信息
def lookup():
sid = int(input("輸入查詢學號:"))-1 #學號
if sid > len(student1)-1:
print("輸入錯誤,返回菜單")
else:
print(student1[sid]) #輸出信息
input("按回車鍵繼續(xù)")
5、接下來是添加學生信息(append())
因為列表元素是用字典存儲,所以這里用到字典的添加元素
#添加信息
def append():
newsid = eval(input('輸入新同學學號(從4開始):'))
newname = eval(input('輸入新同學姓名:'))
newage = eval(input('輸入新同學年齡:'))
newsocer = eval(input('輸入新同學成績:'))
newstudent1 = {}
newstudent1[newsid] = newname #添加 學號、姓名
newstudent1['age'] = newage #添加年齡
newstudent1['socer'] = newsocer #添加成績
student1.append(newstudent1) #加入列表
input("按回車鍵繼續(xù)")
6、能添加也就能刪除(delete())
#刪除信息
def delete():
did = int(input("輸入需要刪除的成績對應的學號:"))-1
del student1[did] #刪除指定信息
input("按回車鍵繼續(xù)")
7、然后就是輸出所有信息(allinformation())
這里遍歷輸出列表元素時,用到了格式化字符串的函數 str.format()
##輸出所有學生信息
def allinformation():
print("所有信息如下:")
i = 1
for show in student1:
print("{}".format(show)) #打印學生信息
i += 1
input("按回車鍵繼續(xù)")
8、現(xiàn)在還差修改信息(revise())
也是字典修改值得方法,通過鍵來修改對應值
##修改信息
def revise():
resid = int(input("輸入要修改的學生學號:"))-1
r = input("要修改的對象(1.年齡;2.成績;否則,都修改):")
if r == '1':
newage = input("修改后的年齡")
student1[resid]['age'] = newage
elif r == '2':
newsocer = input("修改后的成績")
student1[resid]['socer'] = newsocer
else:
newage = input("修改后的年齡")
newsocer = input("修改后的成績")
student1[resid]['socer'] = newsocer
student1[resid]['age'] = newage
input("按回車鍵繼續(xù)")
9、差點忘了還得保存一下信息……(save())
我把它保存在與代碼同一文件中student.txt文件中,引入路徑時需要絕對路徑
##保存學生信息
def save():
f = open('student.txt','w') #打開文件
f.write(str(student1)) #寫入文件
f.close() #關閉文件
input("保存成功按回車鍵繼續(xù)")
然后,完整代碼如下:
'''
Created on 2021年6月13日
學生信息系統(tǒng)
列表存儲學生信息,通過字典——鍵進行學生信息訪問
@author: 小天
'''
student1 = [\
{1:"jam",'age':17,'socer':99},
{2:'kol','age':18,'socer':89},
{3:'avlir','age':19,'socer':100}]
#頁面
def menu():
print('-'*30)
print("歡迎來到學生管理系統(tǒng)")
print("1.輸入學號查詢成績")
print("2.添加學生信息")
print("3.刪除學生信息")
print("4.打印所有學生信息")
print("5.修改學生信息")
print("6.保存學生信息到指定文件")
print("0.退出系統(tǒng)")
print("-"*30)
#打印信息
def lookup():
sid = int(input("輸入查詢學號:"))-1 #學號
if sid > len(student1)-1:
print("輸入錯誤,返回菜單")
else:
print(student1[sid]) #輸出信息
input("按回車鍵繼續(xù)")
#添加信息
def append():
newsid = eval(input('輸入新同學學號(從4開始):'))
newname = eval(input('輸入新同學姓名:'))
newage = eval(input('輸入新同學年齡:'))
newsocer = eval(input('輸入新同學成績:'))
newstudent1 = {}
newstudent1[newsid] = newname #添加 學號、姓名
newstudent1['age'] = newage #添加年齡
newstudent1['socer'] = newsocer #添加成績
student1.append(newstudent1) #加入列表
input("按回車鍵繼續(xù)")
#刪除信息
def delete():
did = int(input("輸入需要刪除的成績對應的學號:"))-1
del student1[did] #刪除指定信息
input("按回車鍵繼續(xù)")
##輸出所有學生信息
def allinformation():
print("所有信息如下:")
i = 1
for show in student1:
print("{}".format(show)) #打印學生信息
i += 1
input("按回車鍵繼續(xù)")
##修改信息
def revise():
resid = int(input("輸入要修改的學生學號:"))-1
r = input("要修改的對象(1.年齡;2.成績;否則,都修改):")
if r == '1':
newage = input("修改后的年齡")
student1[resid]['age'] = newage
elif r == '2':
newsocer = input("修改后的成績")
student1[resid]['socer'] = newsocer
else:
newage = input("修改后的年齡")
newsocer = input("修改后的成績")
student1[resid]['socer'] = newsocer
student1[resid]['age'] = newage
input("按回車鍵繼續(xù)")
##保存學生信息
def save():
f = open('student.txt','w') #打開文件
f.write(str(student1)) #寫入文件
f.close() #關閉文件
input("保存成功按回車鍵繼續(xù)")
if __name__ == '__main__':
while True:
menu()
key = input("輸入選項數字 查詢/輸入 信息:")
if key == '1':
lookup() #打印指定學生信息
elif key == '2':
append() #添加新的學生信息
elif key == '3':
delete() #刪除指定學生信息
elif key == '4':
allinformation() #打印所有信息
elif key == '5':
revise() #修改指定學生信息
elif key == '6':
save() #保存信息
elif key == '0':
print("確定退出?")
exit = input("輸入yes退出:")
if exit == 'yes':
break
else:
print("輸入錯誤,返回 ")
輸出示例:
------------------------------
歡迎來到學生管理系統(tǒng)
1.輸入學號查詢成績
2.添加學生信息
3.刪除學生信息
4.打印所有學生信息
5.修改學生信息
6.保存學生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項數字 查詢/輸入 信息:2
輸入新同學學號(從4開始):4
輸入新同學姓名:'dfg'
輸入新同學年齡:17
輸入新同學成績:78
按回車鍵繼續(xù)
------------------------------
歡迎來到學生管理系統(tǒng)
1.輸入學號查詢成績
2.添加學生信息
3.刪除學生信息
4.打印所有學生信息
5.修改學生信息
6.保存學生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項數字 查詢/輸入 信息:6
按回車鍵繼續(xù)
------------------------------
歡迎來到學生管理系統(tǒng)
1.輸入學號查詢成績
2.添加學生信息
3.刪除學生信息
4.打印所有學生信息
5.修改學生信息
6.保存學生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項數字 查詢/輸入 信息:4
所有信息如下:
{1: 'jam', 'age': 17, 'socer': 99}
{2: 'kol', 'age': 18, 'socer': 89}
{3: 'avlir', 'age': 19, 'socer': 100}
{4: 'dfg', 'age': 17, 'socer': 78}
按回車鍵繼續(xù)
------------------------------
歡迎來到學生管理系統(tǒng)
1.輸入學號查詢成績
2.添加學生信息
3.刪除學生信息
4.打印所有學生信息
5.修改學生信息
6.保存學生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項數字 查詢/輸入 信息:3
輸入需要刪除的成績對應的學號:4
按回車鍵繼續(xù)
------------------------------
歡迎來到學生管理系統(tǒng)
1.輸入學號查詢成績
2.添加學生信息
3.刪除學生信息
4.打印所有學生信息
5.修改學生信息
6.保存學生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項數字 查詢/輸入 信息:6
按回車鍵繼續(xù)
------------------------------
歡迎來到學生管理系統(tǒng)
1.輸入學號查詢成績
2.添加學生信息
3.刪除學生信息
4.打印所有學生信息
5.修改學生信息
6.保存學生信息到指定文件
0.退出系統(tǒng)
------------------------------
輸入選項數字 查詢/輸入 信息:0
確定退出?
輸入yes退出:yes
到此這篇關于教你用Python實現(xiàn)簡易版學生信息管理系統(tǒng)(含源碼)的文章就介紹到這了,更多相關Python學生信息管理系統(tǒng)內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
您可能感興趣的文章:- Python函數實現(xiàn)學員管理系統(tǒng)
- python面向對象版學生信息管理系統(tǒng)
- Python實現(xiàn)學生管理系統(tǒng)(面向對象版)
- python學生信息管理系統(tǒng)實現(xiàn)代碼
- 教你用python實現(xiàn)一個無界面的小型圖書管理系統(tǒng)
- 基于Python實現(xiàn)的購物商城管理系統(tǒng)
- 一篇文章教你用Python實現(xiàn)一個學生管理系統(tǒng)