Python : 使用python实现学生信息管理系统

╰半橙微兮° 2024-04-01 09:54 184阅读 0赞

一、学生管理系统

学生描述:学号、姓名、性别、成绩
学生管理系统功能:添加学生信息、不能添加重复学号学生、删除学生信息、根据学号修改学生信息、根据学号查询学生信息、显示所有学生信息、退出系统

二、代码说明

  1. 将每一个学生的信息放一个元组中,再把元组添加到列表中
  2. 元组 键值对儿 {‘uid’:uid,‘name’: name, ‘sex’: sex, ‘yuwen’: yuwen, ‘shuxue’: shuxue, ‘yingyu’: yingyu}
  3. 用到 字典的增删改查、列表的增删改查、函数的调用、列表的遍历、循环语句、判断语句等知识

三、代码实现

  1. # 定义一个空列表,用来存放学生信息
  2. student_list = []
  3. def mean():
  4. print(" ================================================================")
  5. print("欢迎使用学生信息管理系统")
  6. print("1.添加学生信息")
  7. print("2.删除学生信息")
  8. print("3.修改学生信息")
  9. print("4.查询学生信息")
  10. print("5.学生成绩统计")
  11. print("6.查询所有学生信息")
  12. print("7.退出系统")
  13. print(" ===============================================================")
  14. def addstudent():
  15. # 声明使用全局变量student_list
  16. global student_list
  17. print("添加学生信息")
  18. uid = input("请输入学生的学号:")
  19. name = input("请输入学生的姓名:")
  20. sex = input("请输入学生的性别:")
  21. yuwen = float(input("请输入语文成绩: "))
  22. shuxue = float(input("请输入数学成成绩: "))
  23. yingyu = float(input("请输入英语成成绩 :"))
  24. # 对数据进行验证,验证学号是否重复
  25. for i in student_list:
  26. # 如果重复
  27. if i['uid'] == uid:
  28. print("学号已存在")
  29. break
  30. else:
  31. # 将学生的信息添加到student_list列表
  32. student_info = {
  33. 'uid':uid,'name': name, 'sex': sex, 'yuwen': yuwen, 'shuxue': shuxue, 'yingyu': yingyu}
  34. # 打印添加的学生信息
  35. print(student_info)
  36. # print("学号:%s" % uid, "姓名:%s" % name, "性别%s" % sex,
  37. # "语文成绩:%.2f,语文成绩:%.2f,语文成绩:%.2f" % (yuwen, shuxue, yingyu))
  38. # student_list[uid] = student_info
  39. student_list.append(student_info)
  40. print("总成绩为:%.2f" % (yuwen+shuxue+yingyu))
  41. avg_student = (yuwen+shuxue+yingyu)/3
  42. print("平均成绩为:%.2f" % avg_student)
  43. print("添加成功")
  44. def delstudent():
  45. print("删除学生信息")
  46. # 根据学号删除信息
  47. uid = input("请输入要删除学生的学号:")
  48. # 遍历列表
  49. for student in student_list:
  50. # 如果找到学生信息
  51. if student['uid'] == uid:
  52. #删除学生
  53. student_list.remove(student)
  54. print(f"已删除{uid}学生信息")
  55. else:
  56. # 否则学生信息不存在
  57. print(f"{uid}学生信息未保存")
  58. def updatestudent():
  59. print("修改学生信息")
  60. #根据学号来修改
  61. uid = input("请输入你要修改的学生学号:")
  62. # 遍历列表
  63. for student in student_list:
  64. # 如果找到输入的学号
  65. if student['uid'] == uid:
  66. # 修改信息
  67. student['uid'] = input("请输入修改后的学生学号:")
  68. student['name'] = input("请输入修改后的学生姓名:")
  69. student['sex'] = input("请输入修改后的学生性别:")
  70. student['yuwen'] = float(input("请输入修改后的学生语文成绩:"))
  71. student['shuxue'] = float(input("请输入修改后的学生数学成绩:"))
  72. student['yingyu'] = float(input("请输入修改后的学生英语成绩:"))
  73. print("该学生的信息已更新为:学号:%s" % student['uid'], "\n姓名:%s" % student['name'], "\n性别:%s" % student['sex'],
  74. "\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (student['yuwen'], student['shuxue'], student['yingyu']))
  75. # print("该学生信息已更新为:学号:{},姓名:{},性别:{},语文成绩:{},数学成绩:{},英语成绩:{}".format(student["uid"],student["name"], student["sex"], student["yuwen"],student["shuxue"],student["yingyu"]))
  76. else:
  77. # 否则,输入有误
  78. print(f"输入有误,没用找到{uid}学生信息")
  79. def selectstudent():
  80. print("查询学生信息")
  81. # global student_list
  82. # 根据学号进行查找
  83. select = input("请输入你要查询学生的学号:")
  84. # 遍历列表,查找对应信息
  85. for student in student_list:
  86. #如果找到用户输入的学号
  87. if student['uid'] == select:
  88. # 输出查询的信息
  89. print("学号:%s" % student['uid'], "\n姓名:%s" % student['name'], "\n性别:%s" % student['sex'],
  90. "\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (student['yuwen'], student['shuxue'], student['yingyu']))
  91. # print("学号:{}\n姓名:{}\n性别:{}\n语文成绩:{}\n数学成绩:{}\n英语成绩:{}"
  92. # .format(student["uid"],student["name"], student["sex"], student["yuwen"],student["shuxue"],student["yingyu"]))
  93. break
  94. else:
  95. # 跳出循环表示学号不存在
  96. print(f"学号为{select}的学生信息未保存")
  97. # print("学号:%s 姓名:%s 性别:%s 语文成绩:%s 数学成绩:%s 英语成绩:%s"
  98. # %(uid, value['name'], value['sex'], value['yuwen'], value['shuxue'], value['yingyu']))
  99. # print("学号:%s" % uid, "姓名:%s" % name, "性别%s" % sex,"语文成绩:%.2f,语文成绩:%.2f,语文成绩:%.2f" % (yuwen, shuxue, yingyu))
  100. def selectAllStudent():
  101. print("查询所有学生信息")
  102. # 遍历列表,查找对应信息
  103. for student in student_list:
  104. # 输出查询的信息
  105. print("学号:%s" % student['uid'], "\n姓名:%s" % student['name'], "\n性别:%s" % student['sex'],
  106. "\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (
  107. student['yuwen'], student['shuxue'], student['yingyu']))
  108. def allstudent():
  109. print("学生成绩统计")
  110. # 根据学号统计
  111. uid = input("请输入要统计的学生学号:")
  112. # 遍历列表
  113. for student in student_list:
  114. # 如果输入学号存在
  115. if student['uid'] == uid:
  116. # 统计学生成绩
  117. print("学生成绩\n语文成绩:%.2f\n数学成绩:%.2f\n英语成绩:%.2f" % (student['yuwen'], student['shuxue'], student['yingyu']))
  118. print("总成绩为:%.2f" % (student['yuwen'] + student['shuxue'] + student['yingyu']))
  119. avg_student = (student['yuwen'] + student['shuxue'] + student['yingyu']) / 3
  120. print("平均成绩为:%.2f" % avg_student)
  121. break
  122. else:
  123. print(f"{uid}学生信息未保存")
  124. def main():
  125. while True:
  126. mean()
  127. num = input("请输入:")
  128. if num == "1":
  129. addstudent()
  130. elif num == "2":
  131. delstudent()
  132. elif num == "3":
  133. updatestudent()
  134. elif num == "4":
  135. selectstudent()
  136. elif num == "5":
  137. allstudent()
  138. elif num == "6":
  139. selectAllStudent()
  140. elif num == "7":
  141. print("退出系统")
  142. break
  143. else:
  144. print("你的输入有错误")
  145. main()

四、代码运行结果

1. 添加学生信息

在这里插入图片描述

2. 显示添加的所有学生

在这里插入图片描述

3. 根据学号查询学生信息

在这里插入图片描述

4. 修改学生信息

在这里插入图片描述

5. 删除学生信息

在这里插入图片描述

6. 根据学号查看学生成绩统计

在这里插入图片描述

7. 退出系统

在这里插入图片描述

实验报告+项目源码

发表评论

表情:
评论列表 (有 0 条评论,184人围观)

还没有评论,来说两句吧...

相关阅读