本文為大家分享了python實(shí)現(xiàn)學(xué)生管理系統(tǒng)的具體代碼,供大家參考,具體內(nèi)容如下
1.0版本學(xué)生管理系統(tǒng)
''' 1.添加學(xué)員 2.修改學(xué)員 3.查詢學(xué)員 4.刪除學(xué)員 0.退出程序'''student_list=[]while True: print('1.添加學(xué)員') print('2.修改學(xué)員') print('3.查詢學(xué)員') print('4.刪除學(xué)員') print('0.退出程序') sel_num=input('請(qǐng)輸入您要進(jìn)行的操作:') sel_num=int(sel_num) #如果選擇的數(shù)字不在0~5 繼續(xù)選擇 while sel_num not in range(0,5): sel_num=input('您的選擇無效,請(qǐng)重新選擇:') sel_num=int(sel_num) if sel_num==1: name=input('請(qǐng)輸入姓名:') age=input('請(qǐng)輸入年齡:') sex=input('請(qǐng)輸入性別:') person_list=[name,age,sex] student_list.append(person_list) print('添加成功!') elif sel_num==2: for x in range(0,len(student_list)): person=student_list[x] print('序號(hào):%s 姓名:%s 年齡:%s 性別:%s '%(x,person[0],person[1],person[2])) index=input('請(qǐng)輸入要修改的序號(hào):') index=int(index) while index not in range(0, len(student_list)): index = input('您選擇的序號(hào)無效,請(qǐng)重新選擇:') index = int(index) person=student_list[index] name=person[0] age=person[1] sex=person[2] student_list[index][0]=input('請(qǐng)輸入修改后的姓名:(%s):'%name) student_list[index][1]=input('請(qǐng)輸入修改后的年齡:(%s):'%age) student_list[index][2]=input('請(qǐng)輸入修改后的性別:(%s)'%sex) print('修改成功!') elif sel_num==3: for x in range(0,len(student_list)): person=student_list[x] name=person[0] age=person[1] sex=person[2] print('序號(hào):%s 姓名:%s 年齡:%s 性別:%s '%(x,name,age,sex)) elif sel_num==4: for x in range(0,len(student_list)): person=student_list[x] print('序號(hào):%s 姓名:%s 年齡:%s 性別:%s '%(x,person[0],person[1],person[2])) print('1.刪除所有學(xué)員') print('2.刪除選擇的學(xué)員') num=input('請(qǐng)輸入您的選擇:') if num=='1': student_list.clear() else: index = input('請(qǐng)輸入要?jiǎng)h除學(xué)員的序號(hào):') index = int(index) while index not in range(0, len(student_list)): index = input('您選擇的序號(hào)無效,請(qǐng)重新選擇:') index = int(index) del student_list[index] else: break
2.0版本學(xué)生管理系統(tǒng)---函數(shù)版--用列表存放學(xué)員信息
#添加學(xué)員函數(shù)def add_student(): #輸入學(xué)員姓名、年齡、電話 name=input('請(qǐng)輸入學(xué)員姓名:') age=input('請(qǐng)輸入學(xué)員年齡:') phone=input('請(qǐng)輸入學(xué)員電話:') #把name、age、phone放在小列表中 student=[name,age,phone] # 把小列表添加到所有學(xué)員的大列表中 # append(object) insert(index,object) extend(iterable) student_list.append(student) print('添加學(xué)員成功!')#查詢學(xué)員函數(shù)def query_student(): #1.查詢所有學(xué)員 #2.輸入學(xué)員姓名 查詢學(xué)員得到查詢的學(xué)員的序號(hào) print('1.查詢所有學(xué)員') print('2.查詢部分學(xué)員') num=int(input('請(qǐng)輸入操作序號(hào):')) while num not in range(1,3): num=int(input('選擇無效,請(qǐng)重新輸入:')) if num==1: print('**************學(xué)員信息列表***************') #遍歷大列表 for x in range(0,len(student_list)): #根據(jù)x的值從大列表中取出小列表 student=student_list[x] #從小列表中取出姓名、年齡、電話 name=student[0] age=student[1] phone=student[2] print('序號(hào):%s 姓名:%s 年齡:%s 電話:%s'%(x,name,age,phone)) else: name = input('請(qǐng)輸入您要查詢的學(xué)員姓名:') while 1: a=False for student in student_list: if student[0] == name: index = student_list.index(student, 0, 8) print('序號(hào):%s 姓名:%s 年齡:%s 電話:%s'%(index,student_list[index][0],student_list[index][1],student_list[ index][2])) a=True if a==False: name=input('該學(xué)員沒找到,請(qǐng)重新輸入:') else: break # 修改學(xué)員的函數(shù)def update_student(): #判斷是否有學(xué)員信息,如果沒有,直接結(jié)束函數(shù)的執(zhí)行 if len(student_list)==0: print('沒有學(xué)員信息,無法進(jìn)行修改操作!') #強(qiáng)制結(jié)束函數(shù)的執(zhí)行 return下面的代碼都不會(huì)再執(zhí)行了 return #1.查詢學(xué)員信息 query_student() #2.選擇要修改的學(xué)員序號(hào) num=input('請(qǐng)選擇要修改的學(xué)員序號(hào):') #3.轉(zhuǎn)換為整數(shù) num=int(num) #4.判斷選擇的學(xué)員序號(hào)是否在范圍內(nèi) while num not in range(0,len(student_list)): #不在范圍,重新選擇 num=input('沒有該序號(hào),請(qǐng)重選:') num=int(num) #5.根據(jù)選擇的序號(hào)取出對(duì)應(yīng)的小列表 student=student_list[num] new_name=input('請(qǐng)輸入修改后的姓名(%s):'%student[0]) new_age=input('請(qǐng)輸入修改后的年齡(%s)'%student[1]) new_phone=input('請(qǐng)輸入修改后的電話(%s)'%student[2]) #6.修改小列表中的數(shù)據(jù) student[0]=new_name student[1]=new_age student[2]=new_phone print('修改數(shù)據(jù)完成!')#刪除學(xué)員#1.根據(jù)學(xué)員序號(hào)刪除 2.刪除所有學(xué)員 3.根據(jù)學(xué)員的姓名來刪除(有同名的)def delete_student(): if len(student_list)==0: print('沒有學(xué)員信息,無法執(zhí)行刪除操作!') return print('1.根據(jù)學(xué)員序號(hào)刪除') print('2.刪除所有學(xué)員') print('3.根據(jù)學(xué)員姓名刪除學(xué)員') #獲取輸入的內(nèi)容并轉(zhuǎn)換為整數(shù)類型 num=int(input('請(qǐng)輸入您的選擇:')) #判斷選擇的選項(xiàng)是否在范圍內(nèi) while num not in range(1,4): num=int(input('沒有該序號(hào),請(qǐng)重新選擇')) #判斷選擇的選項(xiàng) if num == 1: # 1.查詢學(xué)員信息 query_student() #2.選擇刪除的序號(hào) num=int(input('請(qǐng)輸入您要?jiǎng)h除的學(xué)員序號(hào):')) #判斷選擇序號(hào)是否在范圍內(nèi) while num not in range(0,len(student_list)): num=int(input('序號(hào)無效,請(qǐng)重選!')) is_del=input('您確定要?jiǎng)h除(%s)學(xué)員的信息嗎?(y/n):'%student_list[num][0]) if is_del=='y': #刪除列表中的所有數(shù)據(jù) del student_list[num] #student_list.pop(index) print('%s學(xué)員信息刪除成功!'%student_list[num][0]) if num==2: #確認(rèn)刪除 is_del=input('您確定要?jiǎng)h除所有學(xué)員信息嗎?y(確定)/n(取消):') if is_del=='y': #刪除列表中的所有數(shù)據(jù) student_list.clear() print('所有學(xué)員刪除成功!') else: print('刪除數(shù)據(jù)操作已去取消!') else: name = input('請(qǐng)輸入您要?jiǎng)h除的學(xué)員的姓名:') while 1: #定義列表存放不等于name的小列表 list = [] #遍歷大列表 for student in student_list: #判斷輸入的name是否和小列表里name的相等 if student[0] != name: #找出與name不等的小列表所在的索引 index = student_list.index(student,0,len(student_list)) #將符合的小列表添加到list列表中 list.append(student_list[index]) #判斷兩個(gè)列表長(zhǎng)度是否相等 相等說明大列表中不存在名字為name的小列表 if len(student_list) == len(list): name = input('序號(hào)不存在,請(qǐng)重新輸入:') #存在符合的小列表 else: #清空大列表 student_list.clear() #循環(huán)將list列表的內(nèi)容寫入到空的大列表中 for dict in list: student_list.append(dict) break#1.聲明一個(gè)大列表,存放所有學(xué)員信息student_list=[]#2.while循環(huán)while True: print('***********學(xué)員管理系統(tǒng)V2.0**************') print('1.添加學(xué)員') print('2.查詢學(xué)員') print('3.修改學(xué)員') print('4.刪除學(xué)員') print('0.退出程序') print('***************************************') #選擇操作 num=input('請(qǐng)選擇您的操作:') #轉(zhuǎn)換為整數(shù) num=int(num) #判斷選擇的選項(xiàng)是否在范圍內(nèi) while num not in range(0,5): #重新選擇 num=input('沒有該選項(xiàng),請(qǐng)重選:') #把字符串轉(zhuǎn)換為整數(shù)類型 num=int(num) #根據(jù)選擇的選項(xiàng)執(zhí)行對(duì)應(yīng)的操作 if num==1: #調(diào)用添加學(xué)員的函數(shù) add_student() elif num==2: #調(diào)用查詢學(xué)員的函數(shù) query_student() elif num==3: #調(diào)用修改學(xué)員的的函數(shù) update_student() elif num==4: delete_student() else: print('程序已結(jié)束!') break
新聞熱點(diǎn)
疑難解答
圖片精選