Python简单学生管理系统
<p>-------------------<br> 学生管理系统V2.0 <br>1:添加学生<br>2:删除学生<br>3:修改学生<br>4:查询学生<br>5:显示所有学生<br>6:保存数据<br>7:退出系统<br>-------------------</p>
代码如下所示:
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:不知道啥时候开学,在家懒得不想看,快点开学吧,疫情快点过去,武汉加油!中国加油!