函式封裝 學生管理系統
阿新 • • 發佈:2018-12-01
student_list = [{'name': '小明', 'age':10, 'sex':'male'}, {'name':'小紅', 'age':12, 'sex':'female'}, {'name':'小李', 'age':12, 'sex':'male'} ] def panduan1(): print('{:<10}{:<10}{:<10}{:<10}'.format('編號','姓名','年齡','性別')) print('~'*50) for i in range(0,len(student_list)): student=student_list[i] name=student['name'] age=student['age'] sex=student['sex'] print('{:<10}{:<10}{:>5}{:>15}'.format(i+1,name,age,sex)) print('-'*50) def panduan2(): new_name=input('請輸入你要新增的姓名:') new_age=int(input('請輸入你要新增的年齡:')) new_sex=input('請輸入你要新增的性別') if new_sex!='男'and new_sex!='女'and new_sex!='male'and new_sex!='female': print('輸入錯誤,您輸入的性別錯誤"{}"!'.format(new_sex)) panduan2() new_dict={ 'name':new_name, 'age':new_age, 'sex':new_sex } student_list.append(new_dict) print('姓名新增成功!') print('-'*20) name=input('是否顯示列表(確認/取消):') if name=='確認': panduan1() elif name=='取消': print(""" 取消成功! 即將返回選單 """) zong() else: print('輸入錯誤!') def panduan3(): panduan1() num=int(input('請根據編號修改資訊:')) while num<1 or num>len(student_list): num=int(input('輸入錯誤,請重新輸入:')) name=input('請輸入你要修改的名字:') age=int(input('請輸入要修改的年齡:')) sex=input('請輸入你要修改的性別:') student_list[num-1]['name']=name student_list[num-1]['age']=age student_list[num-1]['sex']=sex print(""" ———— 修改成功 ———— """) def panduan4(): panduan1() print(""" 1-根據編號刪除資訊 2-刪除所有 """) number=int(input('請輸入你要操作的序號:')) while number<1 or number>2: number=int(input('輸入錯誤,請重新輸入:')) if number ==1: num=int(input('請輸入你要刪除的編號所在資訊:')) while num<1 or num>len(student_list): num=int(input('輸入錯誤,請重新輸入:')) student_list.pop(num-1) print('刪除成功!') elif number ==2: select=input('是否刪除全部資訊,請輸入(確認/取消):') if select=='確認': student_list.clear() print('全部刪除成功!') elif select=='取消': print(""" -------- 取消成功 -------- """) zong() def zong(): while True: print("""歡迎進入> 1-查詢學員姓名 2-新增學生姓名 3-修改學員姓名 4-刪除學員姓名 0-退出程式 """) number=int(input('請輸入你要查詢的序號:')) while number<0 or number>4: number=int(input('輸入錯誤,請重新輸入:')) if number==1: panduan1() elif number==2: panduan2() elif number==3: panduan3() elif number==4: panduan4() elif number==0: print(""" 歡迎使用 程式結束 """) break if __name__=='__main__': zong()