python學生管理系統


-------------------
學生管理系統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:不知道啥時候開學,在家懶得不想看,快點開學吧,疫情快點過去,武漢加油!中國加油!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM