欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

python學(xué)生信息管理系統(tǒng)(初級(jí)版)

 更新時(shí)間:2022年05月04日 09:29:58   作者:迷途無(wú)歸  
這篇文章主要為大家詳細(xì)介紹了python學(xué)生信息管理系統(tǒng)的初級(jí)版本代碼,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文為大家分享了python學(xué)生信息管理系統(tǒng)的初級(jí)實(shí)現(xiàn)代碼,供大家參考,具體內(nèi)容如下

學(xué)生信息管理項(xiàng)目,要求帶操作界面,并完成每項(xiàng)操作:

+----------------------+
| 1)添加學(xué)生信息            ?。?br />| 2)顯示所有學(xué)生的信息            ?。?br />| 3)刪除學(xué)生信息                |
| 4)修改學(xué)生信息                    ?。?br />| 5)按學(xué)生成績(jī)高-低顯示學(xué)生信息           |
| 6)按學(xué)生成績(jī)低-高顯示學(xué)生信息         |
| 7)按學(xué)生年齡高-低顯示學(xué)生信息      ?。?br />| 8)按學(xué)生年齡低-高顯示學(xué)生信息      ?。?br />| 9)退出                                       |

學(xué)生信息包括有:名字,年齡,成績(jī)

注:按照正常的輸入流程沒(méi)有問(wèn)題,還有待完善(完整版參見(jiàn)下一篇:Python項(xiàng)目:學(xué)生信息管理系統(tǒng)(完整版)

詳細(xì)代碼如下:

# student_info.py
# 學(xué)生信息管理項(xiàng)目,要求帶操作界面:
# +----------------------+
# | 1)添加學(xué)生信息                     ?。?
# | 2)顯示所有學(xué)生的信息                 |
# | 3)刪除學(xué)生信息                     ?。?
# | 4)修改學(xué)生信息                     ?。?
# | 5)按學(xué)生成績(jī)高-低顯示學(xué)生信息        ?。?
# | 6)按學(xué)生成績(jī)低-高顯示學(xué)生信息         |
# | 7)按學(xué)生年齡高-低顯示學(xué)生信息        ?。?
# | 8)按學(xué)生年齡低-高顯示學(xué)生信息        ?。?
# | 9)退出          ?。?
 
 
def meun():
 menu_info = '''+----------------------+
| 1)添加學(xué)生信息  |
| 2)顯示所有學(xué)生的信息  |
| 3)刪除學(xué)生信息  |
| 4)修改學(xué)生信息  |
| 5)按學(xué)生成績(jī)高-低顯示學(xué)生信息 |
| 6)按學(xué)生成績(jī)低-高顯示學(xué)生信息 |
| 7)按學(xué)生年齡高-低顯示學(xué)生信息 |
| 8)按學(xué)生年齡低-高顯示學(xué)生信息 |
| 9)退出   |
'''
 print(menu_info)
 
 
# 以下二個(gè)函數(shù)用于sorted排序, key的表達(dá)式函數(shù)
def get_age(*l):
 for x in l:
 return x.get("age")
def get_score(*l):
 for x in l:
 return x.get("score")
 
# 1)添加學(xué)生信息
def add_student_info():
 L = []
 while True:
 n = input("請(qǐng)輸入名字:")
 if not n: # 名字為空 跳出循環(huán)
 break
 a = int(input("請(qǐng)輸入年齡:"))
 s = int(input("請(qǐng)輸入成績(jī):"))
 info = {"name":n,"age":a,"score":s}
 L.append(info)
 return L
 
# 2)顯示所有學(xué)生的信息
def show_student_info(student_info):
 print("名字".center(8),"年齡".center(4),"成績(jī)".center(4))
 for info in student_info:
 print(info.get("name").center(10),str(info.get("age")).center(4),str(info.get("score")).center(4))
 
# 3)刪除學(xué)生信息
def del_student_info(student_info,del_name = ''):
 if not del_name:
 del_name = input("請(qǐng)輸入刪除的學(xué)生姓名:")
 for info in student_info:
 if del_name == info.get("name"):
 return info
 
# 4)修改學(xué)生信息
def mod_student_info(student_info):
 mod_name = input("請(qǐng)輸入修改的學(xué)生姓名:")
 for info in student_info:
 if mod_name == info.get("name"):
 a = int(input("請(qǐng)輸入年齡:"))
 s = int(input("請(qǐng)輸入成績(jī):"))
 info = {"name":mod_name,"age":a,"score":s}
 return info
 raise IndexError("學(xué)生信息不匹配,沒(méi)有找到%s" %mod_name)
 
# 5)按學(xué)生成績(jī)高-低顯示學(xué)生信息
def score_reduce(student_info):
 print("按學(xué)生成績(jī)高-低顯示")
 mit = sorted(student_info ,key = get_score,reverse = True)
 show_student_info(mit)
 
# 6)按學(xué)生成績(jī)低-高顯示學(xué)生信息
def score_rise(student_info):
 print("按學(xué)生成績(jī)低-高顯示")
 mit = sorted(student_info ,key = get_score)
 show_student_info(mit)
 
# 7)按學(xué)生年齡高-低顯示學(xué)生信息
def age_reduce(student_info): 
 print("按學(xué)生年齡高-低顯示:")
 mit = sorted(student_info ,key = get_age,reverse = True)
 show_student_info(mit)
 
# 8)按學(xué)生年齡低-高顯示學(xué)生信息
def age_rise(student_info): 
 print("按學(xué)生年齡低-高顯示:")
 mit = sorted(student_info ,key = get_age)
 show_student_info(mit)
 
def main():
 student_info = []
 while True:
 meun()
 number = input("請(qǐng)輸入選項(xiàng):")
 if number == '1':
 student_info = add_student_info()
 elif number == '2':
 show_student_info(student_info)
 elif number == '3':
 student_info.remove(del_student_info(student_info))
 elif number == '4':
 try: 
 student = mod_student_info(student_info)
 except Exception as e:
 # 學(xué)生姓名不匹配
 print(e)
 else:
 # 首先按照根據(jù)輸入信息的名字,從列表中刪除該生信息,然后重新添加該學(xué)生最新信息
 student_info.remove(del_student_info(student_info,del_name = student.get("name"))) 
 student_info.append(student)
 elif number == '5':
 score_reduce(student_info)
 elif number == '6':
 score_rise(student_info)
 elif number == '7':
 age_reduce(student_info)
 elif number == '8':
 age_rise(student_info)
 elif number == '9':
 break
 else:
 break
 
main()

程序效果如下:

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論