1.功能需求分析
根據(jù)項(xiàng)目要求,學(xué)生系統(tǒng)成績(jī)管理系統(tǒng)應(yīng)該具備以下幾個(gè)功能:
(1)系統(tǒng)的登錄與注冊(cè):
(2)學(xué)生成績(jī)添加:
(3)學(xué)生成績(jī)修改:
(4)學(xué)生成績(jī)刪除:
(5)學(xué)生成績(jī)查詢:
(6)學(xué)生成績(jī)排序及顯示:
(7)系統(tǒng)退出:
2. 系統(tǒng)設(shè)計(jì)
2.1 系統(tǒng)功能結(jié)構(gòu)
系統(tǒng)主要功能分為三大模塊,分別為:系統(tǒng)的登錄與注冊(cè)模塊、學(xué)生成績(jī)管理模塊和學(xué)生成績(jī)排序及顯示模塊。其中學(xué)生成績(jī)管理模塊功能包括學(xué)生學(xué)績(jī)的錄入、刪除、修改和查詢;學(xué)生成績(jī)排序顯示模塊功能包括按學(xué)號(hào)排序、按總分排序、按各科目成績(jī)排序顯示。
3. 詳細(xì)設(shè)計(jì)
3.1 登錄與注冊(cè)功能模塊
3.1.1系統(tǒng)的登錄?
1.功能描述
實(shí)現(xiàn)用戶的登錄,系統(tǒng)的登錄功能是通過(guò)函數(shù)login()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 登入功能實(shí)現(xiàn)
def login():
??? user = input("登錄用戶:")
??? passwd = input("登錄密碼:")
??? users = load_user()
??? users.get(user, "0")
??? k = users.get(user, "0")
??? if k == passwd:
??????? mash_menu()
??? else:
??????? if k == "0":
??????????? print("用戶不存在!", end=",")
??????? else:
??????????? print("密碼錯(cuò)誤!", end=",")
??????? input("按任意鍵繼續(xù)!")
3.實(shí)現(xiàn)效果圖
3.1.2系統(tǒng)的注冊(cè)
1.功能描述
實(shí)現(xiàn)用戶的注冊(cè),系統(tǒng)的登錄功能是通過(guò)函數(shù)regist()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 注冊(cè)功能實(shí)現(xiàn)
def regist():
??? user = input("注冊(cè)用戶:")
??? pswd = input("注冊(cè)密碼:")
??? users = load_user()
??? if users.get(user, 0) == 0:
??????? user_write(user, pswd)
??????? print("注冊(cè)成功!", end=",")
??? else:
??????? print("用戶已存在!", end=",")
??? input("按任意鍵繼續(xù)")
3.實(shí)現(xiàn)效果圖
3.2 成績(jī)管理功能模塊
3.2.1主函數(shù)功能設(shè)計(jì)實(shí)現(xiàn)
1.功能描述
系統(tǒng)的操作主界面是通過(guò)主函數(shù)main()的運(yùn)行實(shí)現(xiàn),在主函數(shù)中,通過(guò)循環(huán)調(diào)用函數(shù)menu()生成功能菜單,以及使用if控制各功能子函數(shù)的調(diào)用,從而實(shí)現(xiàn)系統(tǒng)各功能模塊。
2.實(shí)現(xiàn)代碼
# 主菜單?????
def main_menu():
??? ctrl = True
??? while ctrl:
??????? a = os.system("cls")
??????? print('''
????????????????? ┌───學(xué)生成績(jī)管理系統(tǒng)───┐
?????????????????????????? ====主功能菜單===
????????????????????????????? 1.注冊(cè)
????????????????????????????? 2.登錄
????????????????????????????? 3.退出
?????????????????????????? =================
??????????????????????? 說(shuō)明:使用數(shù)字選擇功能
????????????????? └──────────────┘
????????????? ''')
??????? op = eval(input("請(qǐng)輸入數(shù)字[1-3]:"))
??????? if op == 1:
??????????? regist()
??????? elif op == 2:
??????????? login()
??????? elif op == 3:
??????????? print("系統(tǒng)退出!")
??????????? ctrl = False
??????? else:
??????????? print("輸入錯(cuò)誤", end=",")
??????????? input("按任意鍵繼續(xù)!")
3. 實(shí)現(xiàn)效果
進(jìn)入主函數(shù)即可進(jìn)入系統(tǒng)主界面如圖所示。
3.2.2 添加學(xué)生信息設(shè)計(jì)實(shí)現(xiàn)
1.功能描述
添加學(xué)生信息,添加學(xué)生信息的功能是通過(guò)函數(shù)add()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 添加學(xué)生信息
def add():
??? a = os.system("cls")
??? ctrl = True
??? student_list = load_student()? # 讀入本地學(xué)生信息
??? while ctrl:
??????? id = input("請(qǐng)輸入學(xué)生學(xué)號(hào):")
??????? name = input("請(qǐng)輸入學(xué)生姓名:")
??????? english = input("請(qǐng)輸入英語(yǔ)成績(jī):")
??????? math = input("請(qǐng)輸入數(shù)學(xué)成績(jī):")
??????? python = input("請(qǐng)輸入Python成績(jī):")
????? ??try:
??????????? total = str(int(english) + int(math) + int(python))
??????? except:
??????????? print("輸入成績(jī)有誤,請(qǐng)重新數(shù)入!")
??????????? continue
??????? student = [id, name, english, math, python, total]
??????? student_list.append(student)
??????? answer = input("是否繼續(xù)添加信息?。浚?y/n'")
??????? if answer == 'y':
??????????? continue
??????? else:
??????????? break
??? save_stud(student_list)? # 存入學(xué)生信息到本地
??? print("學(xué)生信息錄入成功!")
# 保存學(xué)生信息
def save_stud(lst):
??? stu = open(filename, 'w')
??? for i in lst:
??????? stu.write(','.join(i) + '\n')
stu.close()
3.實(shí)現(xiàn)效果圖
3.2.3 刪除學(xué)生信息設(shè)計(jì)實(shí)現(xiàn)
1.功能描述
?刪除學(xué)生信息,刪除學(xué)生信息的功能是通過(guò)函數(shù)delet()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 刪除學(xué)生信息
def delet():
??? os.system('cls')
??? stud = load_student()
??? ctrl = True
??? while ctrl:
??????? ID = input('請(qǐng)輸入待刪除學(xué)生學(xué)號(hào):')
??????? flag = 0
??????? for i in stud:
??????????? if i[0] == ID:
??????????????? flag = 1
??????????????? stud.remove(i)
??????? if flag:
?????? ?????print("刪除成功!")
??????? else:
??????????? print('學(xué)生信息不存在!')
??????? op = input('是否繼續(xù)刪除:(y/n)')
??????? if op == 'y':
??????????? ctrl = True
??????? else:
??????????? ctrl = False
??? save_stud(stud)
??? print('信息存入成功!')
??? input('請(qǐng)按任意鍵繼續(xù)')
3.實(shí)現(xiàn)效果圖
3.2.4 修改學(xué)生信息設(shè)計(jì)實(shí)現(xiàn)
1.功能描述
修改學(xué)生信息,修改學(xué)生信息的功能是通過(guò)函數(shù)update()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 修改學(xué)生信息
def update():
??? os.system('cls')
??? ctrl = True
??? flag = False
??? stud = load_student()
??? while ctrl:
??????? ID = input("請(qǐng)輸入待修改學(xué)生的學(xué)號(hào):")
??????? for i in stud:
??????????? if i[0] == ID:
??????????????? flag = True
??????????????? op = int(
??????????????????? input('''修改學(xué)生姓名請(qǐng)輸入1,修改英語(yǔ)成績(jī)請(qǐng)輸入2,修改數(shù)學(xué)成績(jī)請(qǐng)輸入3,修改Python成績(jī)請(qǐng)輸入4:'''))
??????????????? if op >= 2:
??????????????????? i[op] = input('請(qǐng)輸入修改后的信息:')
??????????????????? i[-1] = str(int(i[2]) + int(i[3]) + int(i[4]))
??????????????? else:
??????? ????????????i[op] = input('請(qǐng)輸入修改后的信息:')
??????????????? break
??????? if flag:
??????????? print('修改成功!')
??????? else:
??????????? print('未查詢到學(xué)生信息!')
??????? op = input('是否繼續(xù)修改(y/n)?')
??????? if op == 'y':
??????????? ctrl = True
??????? else:
????????? ??ctrl = False
??? save_stud(stud)
3.實(shí)現(xiàn)效果圖
?
?
3.2.5 查詢學(xué)生信息設(shè)計(jì)實(shí)現(xiàn)
1.功能描述
查詢學(xué)生信息,查詢學(xué)生信息的功能是通過(guò)函數(shù)search()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 查詢學(xué)生信息
def search():
??? os.system('cls')
??? stud = load_student()
??? op = input('輸入1按學(xué)號(hào)搜索,輸入2按姓名搜索')
??? op = int(op) - 1
??? flag = False
??? if op == 0:
??????? chrt = input('輸入待搜索學(xué)生的學(xué)號(hào):')
??? else:
??????? chrt = input('輸入待搜索學(xué)生的姓名:')
??? for i in stud:
??????? if i[op] == chrt:
??????????? flag = True
??????????? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
??????????? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
??????????? break
??? if flag:
??????? print('搜索成功!')
??? else:
??????? print('搜索失??!')
??? input('請(qǐng)輸入任意鍵繼續(xù)')
3.實(shí)現(xiàn)效果圖
?
?
3.3 排序及顯示功能模塊
1.功能描述
實(shí)現(xiàn)排序及顯示功能,學(xué)生排序及顯示的功能是通過(guò)函數(shù)show_menu()的運(yùn)行實(shí)現(xiàn)。
?2.具體實(shí)現(xiàn)代碼
# 顯示功能菜單
def show_menu():
??? ctrl = True
??? while ctrl:
??????? a = os.system("cls")
??????? print('''
????????????????? ┌───學(xué)生成績(jī)管理系統(tǒng)───┐
??????????????????????? ====排序與顯示功能菜單===
????????????????????????????? 1.按學(xué)號(hào)排序顯示
????????????????????????????? 2.按總分排序顯示
????????????????????????????? 3.按科目排序顯示????????????????????????????
????????????????????????????? 4.返回上一級(jí)
??????????????????????? ======================
???????????????????????? 說(shuō)明:使用數(shù)字選擇功能
????????????????? └──────────────┘
????????????? ''')
??????? op = eval(input("請(qǐng)輸入數(shù)字[1-4]:"))
??????? if op == 1:
??????????? show_id()
??????? elif op == 2:
??????????? show_total()
??????? elif op == 3:
??????????? show_score()
??????? elif op == 4:
??????????? ctrl = False
? ??????else:
??????????? print("輸入錯(cuò)誤", end=",")
??????????? input("按任意鍵繼續(xù)!")
3.實(shí)現(xiàn)效果圖
3.3.1按學(xué)號(hào)排序顯示
1.功能描述
按學(xué)號(hào)排序,按學(xué)號(hào)排序的功能是通過(guò)函數(shù)show_id()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 按學(xué)號(hào)從小到大顯示學(xué)生信息
def show_id():
??? os.system('cls')
??? stud = load_student()[1:]
??? stud.sort(key=lambda x:int(x[0]), reverse=False)
??? print('-------------記錄信息{}條---------'.format(len(stud)))
??? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
??? for i in stud:
? ??????print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
??? input('按任意鍵以繼續(xù)')
3.實(shí)現(xiàn)效果圖
3.3.2 按總分排序顯示
1.功能描述
按總分排序,按總分排序的功能是通過(guò)函數(shù)show_total()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 按總分從大到小顯示學(xué)生信息
def show_total():
??? os.system('cls')
??? stud = load_student()[1:]
??? stud.sort(key=lambda x: int(x[-1]), reverse=True)
??? print('-------------記錄信息{}條---------'.format(len(stud)))
??? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
??? for i in stud:
??????? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
??? input('按任意鍵以繼續(xù)')
3.實(shí)現(xiàn)效果圖
3.3.3按各科目成績(jī)排序顯示
1.功能描述
按各科目成績(jī)排序,按各科成績(jī)排序的功能是通過(guò)函數(shù)show_score()的運(yùn)行實(shí)現(xiàn)。
2.具體實(shí)現(xiàn)代碼
# 按單科分?jǐn)?shù)從大到小顯示學(xué)生信息
def show_score():
??? os.system('cls')
??? stud = load_student()[1:]
??? op = input("輸入1按英語(yǔ)成績(jī)排序,輸入2按數(shù)學(xué)成績(jī)排序,輸入3按Python成績(jī)排序")
??? op = int(op) + 1
??? stud.sort(key=lambda x: int(x[op]), reverse=True)
??? print('-------------記錄信息{}條---------'.format(len(stud)))
??? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
??? for i in stud:
??????? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
??? input('按任意鍵以繼續(xù)')
3.實(shí)現(xiàn)效果圖
4. 總代碼如下:
import os
username = "user.txt"
filename = 'students.csv'
# 讀取本地用戶賬號(hào)信息
def load_user():
? ? with open(username, 'r') as f:
? ? ? ? dic = {}
? ? ? ? for item in f.readlines():
? ? ? ? ? ? item = item.replace("\n", "")
? ? ? ? ? ? li = item.split(",")
? ? ? ? ? ? dic[li[0]] = li[1]
? ? ? ? f.close()
? ? return dic
# 讀取本地學(xué)生的信息
def load_student():
? ? with open(filename, 'r') as f:
? ? ? ? stud = []
? ? ? ? for item in f.readlines():
? ? ? ? ? ? item = item.replace("\n", "")
? ? ? ? ? ? li = item.split(",")
? ? ? ? ? ? stud.append(li)
? ? ? ? f.close()
? ? return stud
# 保存用戶信息到本地
def user_write(user, pswd):
? ? f = open(username, "a")
? ? f.write(user + "," + pswd + '\n')
? ? f.close()
# 注冊(cè)功能實(shí)現(xiàn)
def regist():
? ? user = input("注冊(cè)用戶:")
? ? pswd = input("注冊(cè)密碼:")
? ? users = load_user()
? ? if users.get(user, 0) == 0:
? ? ? ? user_write(user, pswd)
? ? ? ? print("注冊(cè)成功!", end=",")
? ? else:
? ? ? ? print("用戶已存在!", end=",")
? ? input("按任意鍵繼續(xù)")
# 登入功能實(shí)現(xiàn)
def login():
? ? user = input("登錄用戶:")
? ? passwd = input("登錄密碼:")
? ? users = load_user()
? ? users.get(user, "0")
? ? k = users.get(user, "0")
? ? if k == passwd:
? ? ? ? mash_menu()
? ? else:
? ? ? ? if k == "0":
? ? ? ? ? ? print("用戶不存在!", end=",")
? ? ? ? else:
? ? ? ? ? ? print("密碼錯(cuò)誤!", end=",")
? ? ? ? input("按任意鍵繼續(xù)!")
# 添加學(xué)生信息
def add():
? ? a = os.system("cls")
? ? ctrl = True
? ? student_list = load_student() ?# 讀入本地學(xué)生信息
? ? while ctrl:
? ? ? ? id = input("請(qǐng)輸入學(xué)生學(xué)號(hào):")
? ? ? ? name = input("請(qǐng)輸入學(xué)生姓名:")
? ? ? ? english = input("請(qǐng)輸入英語(yǔ)成績(jī):")
? ? ? ? math = input("請(qǐng)輸入數(shù)學(xué)成績(jī):")
? ? ? ? python = input("請(qǐng)輸入Python成績(jī):")
? ? ? ? try:
? ? ? ? ? ? total = str(int(english) + int(math) + int(python))
? ? ? ? except:
? ? ? ? ? ? print("輸入成績(jī)有誤,請(qǐng)重新數(shù)入!")
? ? ? ? ? ? continue
? ? ? ? student = [id, name, english, math, python, total]
? ? ? ? student_list.append(student)
? ? ? ? answer = input("是否繼續(xù)添加信息???:'y/n'")
? ? ? ? if answer == 'y':
? ? ? ? ? ? continue
? ? ? ? else:
? ? ? ? ? ? break
? ? save_stud(student_list) ?# 存入學(xué)生信息到本地
? ? print("學(xué)生信息錄入成功!")
# 保存學(xué)生信息
def save_stud(lst):
? ? stu = open(filename, 'w')
? ? for i in lst:
? ? ? ? stu.write(','.join(i) + '\n')
? ? stu.close()
# 刪除學(xué)生信息
def delet():
? ? os.system('cls')
? ? stud = load_student()
? ? ctrl = True
? ? while ctrl:
? ? ? ? ID = input('請(qǐng)輸入待刪除學(xué)生學(xué)號(hào):')
? ? ? ? flag = 0
? ? ? ? for i in stud:
? ? ? ? ? ? if i[0] == ID:
? ? ? ? ? ? ? ? flag = 1
? ? ? ? ? ? ? ? stud.remove(i)
? ? ? ? if flag:
? ? ? ? ? ? print("刪除成功!")
? ? ? ? else:
? ? ? ? ? ? print('學(xué)生信息不存在!')
? ? ? ? op = input('是否繼續(xù)刪除:(y/n)')
? ? ? ? if op == 'y':
? ? ? ? ? ? ctrl = True
? ? ? ? else:
? ? ? ? ? ? ctrl = False
? ? save_stud(stud)
? ? print('信息存入成功!')
? ? input('請(qǐng)按任意鍵繼續(xù)')
# 查詢學(xué)生信息
def search():
? ? os.system('cls')
? ? stud = load_student()
? ? op = input('輸入1按學(xué)號(hào)搜索,輸入2按姓名搜索')
? ? op = int(op) - 1
? ? flag = False
? ? if op == 0:
? ? ? ? chrt = input('輸入待搜索學(xué)生的學(xué)號(hào):')
? ? else:
? ? ? ? chrt = input('輸入待搜索學(xué)生的姓名:')
? ? for i in stud:
? ? ? ? if i[op] == chrt:
? ? ? ? ? ? flag = True
? ? ? ? ? ? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
? ? ? ? ? ? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
? ? ? ? ? ? break
? ? if flag:
? ? ? ? print('搜索成功!')
? ? else:
? ? ? ? print('搜索失?。?)
? ? input('請(qǐng)輸入任意鍵繼續(xù)')
# 修改學(xué)生信息
def update():
? ? os.system('cls')
? ? ctrl = True
? ? flag = False
? ? stud = load_student()
? ? while ctrl:
? ? ? ? ID = input("請(qǐng)輸入待修改學(xué)生的學(xué)號(hào):")
? ? ? ? for i in stud:
? ? ? ? ? ? if i[0] == ID:
? ? ? ? ? ? ? ? flag = True
? ? ? ? ? ? ? ? op = int(
? ? ? ? ? ? ? ? ? ? input('''修改學(xué)生姓名請(qǐng)輸入1,修改英語(yǔ)成績(jī)請(qǐng)輸入2,修改數(shù)學(xué)成績(jī)請(qǐng)輸入3,修改Python成績(jī)請(qǐng)輸入4:'''))
? ? ? ? ? ? ? ? if op >= 2:
? ? ? ? ? ? ? ? ? ? i[op] = input('請(qǐng)輸入修改后的信息:')
? ? ? ? ? ? ? ? ? ? i[-1] = str(int(i[2]) + int(i[3]) + int(i[4]))
? ? ? ? ? ? ? ? else:
? ? ? ? ? ? ? ? ? ? i[op] = input('請(qǐng)輸入修改后的信息:')
? ? ? ? ? ? ? ? break
? ? ? ? if flag:
? ? ? ? ? ? print('修改成功!')
? ? ? ? else:
? ? ? ? ? ? print('未查詢到學(xué)生信息!')
? ? ? ? op = input('是否繼續(xù)修改(y/n)?')
? ? ? ? if op == 'y':
? ? ? ? ? ? ctrl = True
? ? ? ? else:
? ? ? ? ? ? ctrl = False
? ? save_stud(stud)
# 按學(xué)號(hào)從小到大顯示學(xué)生信息
def show_id():
? ? os.system('cls')
? ? stud = load_student()[1:]
? ? stud.sort(key=lambda x:int(x[0]), reverse=False)
? ? print('-------------記錄信息{}條---------'.format(len(stud)))
? ? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
? ? for i in stud:
? ? ? ? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
? ? input('按任意鍵以繼續(xù)')
# 按總分從大到小顯示學(xué)生信息
def show_total():
? ? os.system('cls')
? ? stud = load_student()[1:]
? ? stud.sort(key=lambda x: int(x[-1]), reverse=True)
? ? print('-------------記錄信息{}條---------'.format(len(stud)))
? ? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
? ? for i in stud:
? ? ? ? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
? ? input('按任意鍵以繼續(xù)')
# 按單科分?jǐn)?shù)從大到小顯示學(xué)生信息
def show_score():
? ? os.system('cls')
? ? stud = load_student()[1:]
? ? op = input("輸入1按英語(yǔ)成績(jī)排序,輸入2按數(shù)學(xué)成績(jī)排序,輸入3按Python成績(jī)排序")
? ? op = int(op) + 1
? ? stud.sort(key=lambda x: int(x[op]), reverse=True)
? ? print('-------------記錄信息{}條---------'.format(len(stud)))
? ? print('{:10}{:10}{:10}{:10}{:10}{:10}'.format('學(xué)號(hào)', '姓名', '英語(yǔ)', '數(shù)學(xué)', 'Python', '總分'))
? ? for i in stud:
? ? ? ? print('{:12}{:12}{:12}{:12}{:12}{:12}'.format(i[0], i[1], i[2], i[3], i[4], i[-1]))
? ? input('按任意鍵以繼續(xù)')
# 顯示功能菜單
def show_menu():
? ? ctrl = True
? ? while ctrl:
? ? ? ? a = os.system("cls")
? ? ? ? print('''
? ? ? ? ? ? ? ? ? ┌───學(xué)生成績(jī)管理系統(tǒng)───┐
? ? ? ? ? ? ? ? ? ? ? ? ====排序與顯示功能菜單===
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1.按學(xué)號(hào)排序顯示
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2.按總分排序顯示
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3.按科目排序顯示 ? ? ? ? ? ? ? ? ? ? ? ? ? ??
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 4.返回上一級(jí)
? ? ? ? ? ? ? ? ? ? ? ? ======================
? ? ? ? ? ? ? ? ? ? ? ? ?說(shuō)明:使用數(shù)字選擇功能
? ? ? ? ? ? ? ? ? └──────────────┘
? ? ? ? ? ? ? ''')
? ? ? ? op = eval(input("請(qǐng)輸入數(shù)字[1-4]:"))
? ? ? ? if op == 1:
? ? ? ? ? ? show_id()
? ? ? ? elif op == 2:
? ? ? ? ? ? show_total()
? ? ? ? elif op == 3:
? ? ? ? ? ? show_score()
? ? ? ? elif op == 4:
? ? ? ? ? ? ctrl = False
? ? ? ? else:
? ? ? ? ? ? print("輸入錯(cuò)誤", end=",")
? ? ? ? ? ? input("按任意鍵繼續(xù)!")
# 學(xué)生信息管理系統(tǒng)菜單
def manage_menu():
? ? ctrl = True
? ? while ctrl:
? ? ? ? a = os.system("cls")
? ? ? ? print('''
? ? ? ? ? ? ? ? ? ┌───學(xué)生成績(jī)管理系統(tǒng)───┐
? ? ? ? ? ? ? ? ? ? ? ? ====成績(jī)管理功能菜單===
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1.學(xué)生成績(jī)添加
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2.學(xué)生成績(jī)修改
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3.學(xué)生成績(jī)刪除
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 4.學(xué)生成績(jī)查詢
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 5.返回上一級(jí)
? ? ? ? ? ? ? ? ? ? ? ?======================
? ? ? ? ? ? ? ? ? ? ? ? 說(shuō)明:使用數(shù)字選擇功能
? ? ? ? ? ? ? ? ? └──────────────┘
? ? ? ? ? ? ? ''')
? ? ? ? op = eval(input("請(qǐng)輸入數(shù)字[1-5]:"))
? ? ? ? if op == 1:
? ? ? ? ? ? add()
? ? ? ? elif op == 2:
? ? ? ? ? ? update()
? ? ? ? elif op == 3:
? ? ? ? ? ? delet()
? ? ? ? elif op == 4:
? ? ? ? ? ? search()
? ? ? ? elif op == 5:
? ? ? ? ? ? ctrl = False
? ? ? ? else:
? ? ? ? ? ? print("輸入錯(cuò)誤", end=",")
? ? ? ? ? ? input("按任意鍵繼續(xù)!")
# 功能菜單
def mash_menu():
? ? ctrl = True
? ? while ctrl:
? ? ? ? a = os.system("cls")
? ? ? ? print('''
? ? ? ? ? ? ? ? ? ┌───學(xué)生成績(jī)管理系統(tǒng)───┐
? ? ? ? ? ? ? ? ? ? ? ? ? ?====功能菜單===
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1.學(xué)生成績(jī)管理
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2.排序及顯示
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3.返回上一級(jí)
? ? ? ? ? ? ? ? ? ? ? ? ? ?=================
? ? ? ? ? ? ? ? ? ? ? ? 說(shuō)明:使用數(shù)字選擇功能
? ? ? ? ? ? ? ? ? └──────────────┘
? ? ? ? ? ? ? ''')
? ? ? ? op = eval(input("請(qǐng)輸入數(shù)字[1-3]:"))
? ? ? ? if op == 1:
? ? ? ? ? ? manage_menu()
? ? ? ? elif op == 2:
? ? ? ? ? ? show_menu()
? ? ? ? elif op == 3:
? ? ? ? ? ? ctrl = False
? ? ? ? else:
? ? ? ? ? ? print("輸入錯(cuò)誤", end=",")
? ? ? ? ? ? input("按任意鍵繼續(xù)!")
? ? ? ? # 主菜單 ? ? ?
def main_menu():
? ? ctrl = True
? ? while ctrl:
? ? ? ? a = os.system("cls")
? ? ? ? print('''
? ? ? ? ? ? ? ? ? ┌───學(xué)生成績(jī)管理系統(tǒng)───┐
? ? ? ? ? ? ? ? ? ? ? ? ? ?====主功能菜單===
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 1.注冊(cè)
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 2.登錄
? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 3.退出
? ? ? ? ? ? ? ? ? ? ? ? ? ?=================
? ? ? ? ? ? ? ? ? ? ? ? 說(shuō)明:使用數(shù)字選擇功能
? ? ? ? ? ? ? ? ? └──────────────┘
? ? ? ? ? ? ? ''')
? ? ? ? op = eval(input("請(qǐng)輸入數(shù)字[1-3]:"))
? ? ? ? if op == 1:
? ? ? ? ? ? regist()
? ? ? ? elif op == 2:
? ? ? ? ? ? login()
? ? ? ? elif op == 3:
? ? ? ? ? ? print("系統(tǒng)退出!")
? ? ? ? ? ? ctrl = False
? ? ? ? else:
? ? ? ? ? ? print("輸入錯(cuò)誤", end=",")
? ? ? ? ? ? input("按任意鍵繼續(xù)!")文章來(lái)源:http://www.zghlxwxcb.cn/news/detail-768870.html
main_menu()文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-768870.html
到了這里,關(guān)于Python學(xué)生成績(jī)管理系統(tǒng)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!