学生管理系统(改进版)

Posted qjyyz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了学生管理系统(改进版)相关的知识,希望对你有一定的参考价值。

运行环境:python3.6.4

编写"学生管理系统"(改进版),初步要求如下:
必须使用自定义函数,完成对程序的模块化
学生信心至少包含:姓名、年龄、学号,除此以外可以适当添加
必须完成的功能:添加、删除、修改、查询、遍历、退出

 

  1 #定义一个列表用来存储多个学生的信息
  2 stuList = []
  3 
  4 #定义系统菜单显示函数
  5 def displayMenu():
  6   #完成显示系统菜单的功能
  7   print("*"*40)
  8   print(" 学 生 管 理 系 统 V2.0")
  9   print(" 1. 添加学生信息")
 10   print(" 2. 删除学生信息")
 11   print(" 3. 修改学生信息")
 12   print(" 4. 查询学生信息")
 13   print(" 5. 遍历学生信息")
 14   print(" 6. 退出学生管理系统")
 15   print("*"*40)
 16 
 17 def addNewStu():
 18   #完成添加学生信息的功能
 19   name = input("请输入学生的姓名:")
 20   stuId = input("请输入学生的学号:")
 21   age = input("请输入学生的年龄:")
 22 
 23   #定义一个字典用来存储每个学生的信息
 24   stuDict = {}
 25   stuDict[\'name\'] = name
 26   stuDict[\'stuId\'] = stuId
 27   stuDict[\'age\'] = age
 28 
 29   global stuList
 30   #将每个学生的信息添加到列表中
 31   stuList.append(stuDict)
 32 
 33 def delStu():
 34   global stuList
 35   #完成删除学生信息的功能
 36   delName = input("请输入你要删除的学生的姓名:")
 37   delFlag = 0
 38   for tempStu in stuList:
 39     if delName == tempStu[\'name\']:    
 40       delNum = stuList.index(tempStu) #获取要删除的学生所在列表中的索引
 41       del stuList[delNum] #按索引删除
 42       delFlag = 1 #删除成功
 43       break
 44   if delFlag == 0:
 45     print("没有此人,请重新输入!")
 46 
 47 def reviseStu():
 48   global stuList
 49   #完成修改学生信息的功能
 50   reviseName = input("请输入你要修改信息的学生姓名:")
 51   reviseFlag = 0
 52   for tempStuDict in stuList:
 53     if reviseName == tempStuDict[\'name\']:
 54       #修改学生的信息
 55       newStuId = input("请输入要修改后学生的学号:")
 56       newAge = input("请输入要修改后学生的年龄:")
 57       tempStuDict[\'stuId\'] = newStuId
 58       tempStuDict[\'age\'] = newAge
 59       reviseFlag = 1
 60       break
 61   if reviseFlag == 0:
 62     print("没有此人,请重新输入!")
 63 
 64 def inquireStu():
 65   global stuList
 66   #完成查询学生信息的功能
 67   inquireName = input("请输入你要查询的学生的姓名:")
 68   inquireFlag = 0
 69   for temp in stuList:
 70     if inquireName == temp[\'name\']:    
 71       print("%s\\t%s\\t%s"%(temp[\'name\'], temp[\'stuId\'], temp[\'age\']))    
 72       inquireFlag = 1 #表示查询成功
 73       break
 74   if inquireFlag == 0:
 75     print("查无此人...") 
 76 
 77 def bianliStu():
 78   #完成遍历学生信息的功能
 79   print("姓名\\t学号\\t年龄")
 80   for tempStu in stuList:
 81   print("%s\\t%s\\t%s"%(tempStu[\'name\'], tempStu[\'stuId\'], tempStu[\'age\']))
 82 
 83 
 84 def main():    
 85   #菜单显示
 86   #1. 提示用户选择功能
 87   displayMenu()
 88 
 89   while True:
 90     #2. 获取用户的输入
 91     key = int(input("请输入你选择的功能序号:"))
 92 
 93     if key == 1:
 94       addNewStu()    
 95     elif key == 2:
 96       delStu()
 97     elif key == 3:
 98       reviseStu()
 99     elif key == 4:
100       inquireStu()
101     elif key == 5:
102       bianliStu()
103     elif key == 6:
104       ssmu = input("亲,确实要退出吗?(y/n) ~~~~>_<~~~~")
105     if ssmu == \'y\':
106       break
107     else:
108       print("输入有误,请重新输入!")
109 
110     print("")
111 
112 #调用主函数
113 main()

 

 

测试结果如下:

以上是关于学生管理系统(改进版)的主要内容,如果未能解决你的问题,请参考以下文章

学生管理系统Java简易版

学生信息管理系统(C语言版)

Golang项目之函数版学生管理系统

用数据结构(c语言版)编写的学生选课系统

[课程设计] 学生成绩管理系统(Python版)

无事写了一个学生管理系统,大家提提意见,在哪里还能改进