首页 > 技术文章 > python之学生信息管理系统

pengpp 2018-06-05 11:27 原文


1 #!usr/bin/python 2 #encoding=utf-8 3 4 #1. 打印学生管理系统界面 5 def printStd(): 6 print ("*"*50) 7 print(" 学生管理系统V0.1 ") 8 print(" 1.添加学生信息") 9 print(" 2.查找学生信息") 10 print(" 3.删除学生信息") 11 print(" 4.遍历学生信息") 12 print(" 5.修改学生信息") 13 print(" 6.退出学生信息") 14 print ("*"*50) 15 choice = input("请输入需要办理业务的序号:") 16 if choice <= 6 and choice > 0: 17 return choice 18 else: 19 print("输入有误,请重新输入") 20 printStd() 21 #2.选择功能:新增、查找、删除、修改、遍历、退出 22 #2.1 选择菜单 23 def makeChoice(choice): 24 if choice == 1: 25 addStd() 26 elif choice ==2: 27 findStd() 28 elif choice == 3: 29 delStd() 30 elif choice ==4: 31 showStd() 32 elif choice ==5: chgStd() 34 elif choice ==6: 35 exitStd() 36 else: 37 print ("输入有误,请重新输入需要办理业务的序号,谢谢!") 38 printStd() 39 #2.2 添加学生信息 40 def addStd(): 41 stdName = raw_input("请输入学生姓名:") 42 stdId = input("请输入学生学号:") 43 stdAge = input("请输入学生年龄:") 44 stdList = {} 45 stdList['Name'] = stdName 46 stdList['Id'] = stdId 47 stdList['Age'] = stdAge 48 std.append(stdList) 49 print("%-20s%s%15s"%('姓名:','学号:','年龄:')) 50 for temp in std: 51 print("%-20s%d%15d"%(temp['Name'],temp['Id'],temp['Age'])) 52 #2.3 查找学生信息 53 def findStd(): 54 #stdName = raw_input("请输入需要查找的学生姓名:") 55 stdId = input("请输入需要查找学生的学号:") 56 flag = 0 57 for temp in std: 58 if stdId == temp['Id']: 59 flag = 1 60 break 61 else: 62 continue        if flag == 1: 64 print("您要查找的学生信息如下:\n姓名:%s 学号:%d 年龄:%d"%(temp['Name'],temp['Id'],temp['Age'])) 65 else: 66 print("很抱歉,系统不存在该学生信息!") 67 68 #2.4 删除学生信息 69 def delStd(): 70 stdId = input("请输入需要删除学生的学号:") 71 flag = 0 72 for temp in std: 73 if stdId == temp['Id']: 74 indexId = std.index(temp) 75 flag = 1 76 break 77 else: 78 continue 79 if flag ==1: 80 assure = raw_input ("确认是否删除?(yes or no):") 81 if assure == "yes": 82 del std[indexId] 83 print("恭喜您已成功删除该新学生了!") 84 else: 85 print("您放弃删除该学生信息了!") 86 else: 87 print("很抱歉,系统不存在该学生信息!") 88 89 #2.5 遍历所有学生信息: 90 def showStd(): print("所有学生信息如下:") 91     print("%-20s%s%15s"%('姓名:','学号:','年龄:')
92 for temp in std:
93           print("%-20s%d%15d"%(temp['Name'],temp['Id'],temp['Age']))
 94 #2.6 修改学生信息:
 95 def chgStd():
 96         stdId = input("请输入需要修改学生的学号:")
 97         flag = 0
 98         for temp in std:
 99                 if stdId == temp['Id']:
100                         flag = 1
101                         assure = raw_input ("确认是否修改?(yes or no):")
102                         if assure == "yes":
103                                 condition= input ("修改名字:0 修改年龄:1 全部修改:2  请输入相应序号:")
104                                 if condition == 0:
105                                         newName = raw_input ("请输入修改后的姓名:")
106                                         temp['Name'] = newName
107                                 elif condition ==1:
108                                         temp['Age'] = input("请输入修改后的年龄:")
109                                 else:
110                                         newName = raw_input ("请输入修改后的姓名:")
111                                         temp['Name'] = newName
112                                         temp['Age'] = input("请输入修改后的年龄:")
113                                 print("恭喜您已修改成功!")
114                                 break
115                         else:
116                                 print("您已放弃修改了!")
117                                 break
118                 else:
119                         continue
120         if flag ==0:
121                 print("很抱歉,系统不存在该学生信息!")

123 #2.6 退出系统
124 def exitStd():
125         global label
126         key = raw_input("确认退出系统?(yes or no)")
127         while(1):
128                 if key == "yes":
129                         print("感谢使用系统,欢迎下次再来!")
130                         label = 1
131                         break
132                 else:
133               print("请重新选择需要办理的业务编号!")
break
134 #3.主程序
135 def main():
136         choice = printStd()
137         while choice<=6:
138                 makeChoice(choice)
139                 if label ==1:
140                         break
141         	   choice = printStd()
142 
143                 
144 label=0
145 std = []
146 main()

1. 新增学生:

2.查找学生信息:

3.删除学生:

4.遍历可验证学号为12的学生是否已删除:

为空,已删除。正常遍历如下:

5. 修改:

 

修改成功。

6.退出:

 

推荐阅读