-------------------
學生管理系統V2.0
1:添加學生
2:刪除學生
3:修改學生
4:查詢學生
5:顯示所有學生
6:保存數據
7:退出系統
-------------------
代碼如下所示:
1 import time 2 import os 3 #定義一個列表,用來存儲所有的學生信息(每個學生是一個字典) 4 info_list = [] 5 6 def print_memu(): 7 print("-------------------") 8 print(" 學生管理系統V2.0 ") 9 print("1:添加學生") 10 print("2:刪除學生") 11 print("3:修改學生") 12 print("4:查詢學生") 13 print("5:顯示所有學生") 14 print("6:保存數據") 15 print("7:退出系統") 16 print("-------------------") 17 18 def add_new_info(): 19 global info_list 20 new_name = input("請輸入姓名:") 21 new_tel = input("請輸入手機號:") 22 new_qq = input("請輸入QQ:") 23 24 for temp_info in info_list: 25 if temp_info['name'] == new_name: 26 print("該用戶名已被占用,請重新輸入") 27 return #該函數結束,沒有返回值 28 #定義一個字典,用來存儲用戶的學生信息 29 info = {} 30 31 #向字典中添加數據 32 info["name"] = new_name 33 info["tel"] = new_tel 34 info['qq'] = new_qq 35 36 #向列表中添加這個字典 37 info_list.append(info) 38 39 #刪除學生信息 40 def del_info(): 41 global info_list 42 del_num = int(input("請輸入要刪除的序號:")) 43 if 0 <= del_num <=len(info_list): 44 del_flag = input("您確定要刪除嗎?yes or no") 45 if del_flag == "yes": 46 del info_list[del_num] 47 else: 48 print("輸入序號有誤,請重新輸入") 49 #修改學生信息 50 def modify_info(): 51 global info_list 52 modify_num = int(input("請輸入要修改的序號:")) 53 if 0<=modify_num<=len(info_list): 54 print("您要修改的信息是:") 55 print("name:%s,tel:%s,qq:%s"%(info_list[modify_num]['name'], 56 info_list[modify_num]['tel'],info_list[modify_num]['qq'])) 57 info_list[modify_num]['name'] = input("請輸入新的姓名:") 58 info_list[modify_num]['tel'] = input("請輸入新的手機號:") 59 info_list[modify_num]['qq'] = input("請輸入新的QQ:") 60 else: 61 print("您輸入的序號有誤,請重新輸入") 62 63 #查詢學生信息 64 def search_info(): 65 search_name = input("請輸入您要查詢的學生姓名:") 66 for temp_info in info_list: 67 if temp_info['name'] == search_name: 68 print("查詢到的信息如下:") 69 print("name:%s,tel:%s,QQ:%s"%(temp_info['name'],temp_info['tel'],temp_info['qq'])) 70 break 71 else: 72 print("沒有您找的信息...") 73 #遍歷學生信息 74 def print_all_info(): 75 print("序號\t姓名\t手機號\tQQ\t") 76 i=0 77 for temp in info_list:#temp是一個字典 78 print("%d\t%s\t%s\t%s\t"%(i,temp['name'],temp['tel'],temp['qq'])) 79 i += 1 80 81 #加載之前存儲的數據 82 def save_data(): 83 f = open("info_data.data","w") 84 f.write(str(info_list)) 85 f.close() 86 87 88 def load_data(): 89 global info_list 90 f = open("info_data.data") 91 content = f.read() 92 info_list = eval(content) 93 f.close() 94 95 #主函數 96 def main():#控制整個程序的流程 97 # 1.加載數據 98 load_data() 99 100 while True: 101 #1.打印功能 102 print_memu() 103 # 2.獲取用戶的選擇 104 num = input("請輸入要進行的操作(數字):") 105 #3.根據用戶的選擇,做相應的事 106 if num == "1": 107 #添加學生 108 add_new_info() 109 elif num == "2": 110 #刪除學生 111 del_info() 112 elif num == "3": 113 #修改學生 114 modify_info() 115 elif num == "4": 116 #查詢學生 117 search_info() 118 elif num == "5": 119 #遍歷所有學生信息 120 print_all_info() 121 elif num == "6": 122 #數據保存到文件中 123 save_data() 124 elif num == "7": 125 #退出系統 126 exit_flag = input("親,您確定要退出了嗎?(yes or no)") 127 if exit_flag == "yes": 128 break 129 else: 130 print("輸入有誤,請重新輸入。。。") 131 132 input("\n\n\n按回車鍵繼續。。。") 133 os.system("clear") #調用linux命令完成清屏 134 135 #程序的開始 136 main()
運行效果如下:
ps:不知道啥時候開學,在家懶得不想看,快點開學吧,疫情快點過去,武漢加油!中國加油!