學生資訊管理系統負責編輯學生資訊,供大家參考,具體内容如下
第一次發帖,下面通過python實作一個簡單的學生資訊管理系統
要求如下:
1.添加學生的資訊
2.删除學生的資訊
3.修改的資訊
4.查詢學生的資訊
5.周遊學生的資訊
6.退出系統
寫法:
1.先考慮整體的架構(即搭架構),不要剛開始就考慮函數。
2.提示使用者選擇功能。
3.擷取使用者選擇的功能。
4.根據使用者的選擇,執行相應的功能。
代碼如下:
# 0.學生管理系統界面
def showInfo():
print("-"*30)
print(" 學生管理系統 v1.0")
print(" 1:添加學生的資訊")
print(" 2:删除學生的資訊")
print(" 3:修改的資訊")
print(" 4:查詢學生的資訊")
print(" 5:周遊學生的資訊")
print(" 6:退出系統")
print("-" * 30)
# 1.添加學生的資訊
def addNewStu(studentsTemp):
name = input("請輸入姓名:")
stuId = input("請輸入學号:")
age = input("請輸入年齡:")
# 2.判斷是否能加這個學生:如果學生姓名已經存在報錯提示;如果姓名不存在添加資料
global students # 聲明students為全局變量
# 2.1不允許學号重複:判斷使用者輸入的學号和清單裡面字典的id對應的值相等提示
for i in students:
if stuId == i['id']:
print("該學号已經存在,請重新操作!!!")
# return作用:退出目前函數,後面添加資訊的代碼不執行
return
# 2.2如果輸入的姓名不存在,添加資料:準備空字典,字典新增資料,清單追加字典
stuInfo = {} # 2.2.1準備空字典
# 2.2.2字典新增資料
stuInfo['name'] = name # 如果name存在指派修改,如果name不存在則指派新增“name”這個變量
stuInfo['id'] = stuId
stuInfo['age'] = age
# 2.2.3清單追加字典資料
studentsTemp.append(stuInfo)
# 2.删除學生的資訊
def del_info():
# 1.使用者輸入要删除的學生的學号
del_name = input("請輸入要删除的姓名:")
# 2.判斷學生是否存在:存在則删除:不存在提示
# 2.1聲明students為全局變量
global students
# 2.2周遊清單
for i in students:
# 2.3判斷學生是否存在:存在執行删除(清單用面的學典).break:這個系統不允許重名,删除了一個後面的不需要再周遊。不存在提示
if del_name == i['name']:
students.remove(i)
break
else: # 循環正常結束
print("該學生不存在")
print(students)
# 3.修改學生的資訊
def modify_info():
# 1.使用者輸入想要修改的學生的姓名
modify_name = input("請輸入要修改的學生的姓名:")
# 2.判斷學生是否存在:存在修改學号:不存在,提示
# 2.1聲明students是全局變量
global students
# 2.2周遊清單,判斷輸入的姓名==字典['name']
for i in students:
if modify_name == i['name']:
# 将stuId修改key值,并終止此循環
i['id'] = input("請輸入新的學号:")
break
else:
# 學生不存在
print("該學生不存在")
# 3.列印students
print(students)
# 4.查詢學生的資訊
def search_info():
# 1.使用者輸入目标學生姓名
search_name = input("請輸入要查詢的學生的姓名:")
# 2.檢查學生是否存在:存在列印這個學生的資訊;不存在則提示
# 2.1聲明students為全局變量
global students
# 2.2周遊students,判斷輸入的學号是否存在
for i in students:
if search_name == i['name']:
# 學員存在:列印資訊并終止循環
print("查詢到的學生資訊如下----------")
print(f"學生的學号是{i['id']},學生的姓名是{i['name']},學生的年齡是{i['age']}")
break
else:
# 學生不存在的提示
print("對不起,您查詢的學生不存在,請重試!")
# 5.周遊學生的資訊
def print_all():
# 1.列印提示字
print('學号\t姓名\t年齡')
# 2.列印所有學生的資料
for i in students:
print(f"{i['id']}\t{i['name']}\t{i['age']}")
students = [] # 等待存儲所有學生資訊
# 系統功能需要循環使用,直在使用者輸入6,才退出系統
while True:
showInfo() # 顯示主界面
key = int(input("請選擇功能(序号):"))
if key == 1:
addNewStu(students)
elif key == 2:
del_info()
elif key == 3:
modify_info()
elif key == 4:
search_info()
elif key == 5:
print_all()
elif key == 6:
exit_flag = input("您确定要退出嗎?yes/no\n")
if exit_flag == 'yes':
break
else:
print("輸入有誤,請重新輸入!")
關于管理系統的更多内容請點選《管理系統專題》進行學習
以上就是本文的全部内容,希望對大家的學習有所幫助,也希望大家多多支援腳本之家。