当前位置:   article > 正文

用python做成绩管理系统,python编写成绩程序_python学生成绩管理系统

python学生成绩管理系统

这篇文章主要介绍了python编写一个简单的学生成绩管理程序,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获,下面让小编带着大家一起了解一下。

人生苦短,python为伴,希望大家喜欢。

今天,我将给大家演示如何用Python制作一个简单的学生成绩管理系统。

Python制作学生成绩管理系统

在这里插入图片描述

制作技巧

1.定义变量

(1)定义交互输入变量

主要用于展示学生成绩管理系统的操作界面。

(2)定义学生成绩信息变量

主要用于学生成绩信息的存取。

  1. s_info = """
  2. *****************************************************
  3. 【学生成绩管理系统】
  4. q. 退出学生成绩系统
  5. 1. 显示学生成绩信息
  6. 2. 新建学生成绩信息
  7. 3. 查询学生成绩信息
  8. 4. 删除学生成绩信息
  9. 5. 修改学生成绩信息
  10. ******************************************************"""
  11. students=[]

2.读取学生成绩信息

主要是从TXT文件中读取学生成绩信息,并保存到学生成绩变量中。

  1. f=open("students.txt","r+")
  2. for st in f.readlines():
  3. students.append(eval(st))
  4. f.close()

3.循环等待操作指令并执行

主要是循环等待输入的学生管理系统操作指令,获取到操作指令后执行对学生成绩信息的显示、新建、查询、删除、修改操作。

  1. while True:
  2. print(s_info)
  3. handle = input('请选择你要的操作选项:')
  4. if handle == 'q':
  5. print('q. 退出系统')
  6. break
  7. elif handle == '1':
  8. s_display(students)
  9. elif handle == '2':
  10. s_new(students)
  11. elif handle == '3':
  12. s_find(students)
  13. elif handle == '4':
  14. s_delect(students)
  15. elif handle == '5':
  16. s_modify(students)
  17. else:
  18. print('请输入正确的操作选项!')

4.编写操作指令执行函数

(1)显示学生成绩信息函数

主要功能是显示所有学生成绩信息。

  1. def s_display(students):
  2. print('1. 显示全部信息')
  3. print('姓名\t语文\t数学\t英语\t总分')
  4. for stu in students:
  5. print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')

(2)新建学生成绩信息函数

主要是新建学生成绩信息,并更新保存学生成绩信息的文件。

  1. def s_new(students):
  2. print('2. 新建学生信息')
  3. name = str(input('请输入学生的姓名:'))
  4. chinese = int(input('请输入学生的语文成绩:'))
  5. math = int(input('请输入学生的数学成绩:'))
  6. english = int(input('请输入学生的英语成绩:'))
  7. total = chinese + math + english
  8. stu = {'name': name, 'chinese': chinese, 'math': math, 'english': english, 'total': total}
  9. students.append(stu)
  10. s_write_to_file(students)

(3)查询学生成绩信息函数

主要是查询给定姓名的学生成绩信息。

  1. def s_find(students):
  2. print('3. 查询学生信息')
  3. name = input('请输入你要查询学生的姓名:')
  4. for stu in students:
  5. if name == stu['name']:
  6. print('姓名\t语文\t数学\t英语\t总分')
  7. print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')
  8. break
  9. else:
  10. print('该学生不存在, 请检查名字是否输入正确!')
  11. s_write_to_file(students)

(4)删除学生成绩信息函数

主要是删除给定姓名的学生成绩信息,并更新保存学生成绩信息的文件。

  1. def s_delect(students):
  2. print('4. 删除学生信息')
  3. name = input('请输入你要删除学生的姓名:')
  4. for stu in students:
  5. if name == stu['name']:
  6. students.remove(stu)
  7. break
  8. else:
  9. print('该学生不存在, 请检查名字是否输入正确!')
  10. s_write_to_file(students)

(5)修改学生成绩信息函数

主要是修改给定姓名的学生成绩信息,并更新保存学生成绩信息的文件。

  1. def s_modify(students):
  2. print('5. 修改学生信息')
  3. name = input('请输入你要修改学生的姓名:')
  4. for stu in students:
  5. if name == stu['name']:
  6. print('(如果不想修改,直接回车!)')
  7. name = input('请重新输入学生的姓名:')
  8. chinese = input('请重新输入学生的语文成绩:')
  9. math = input('请重新输入学生的数学成绩:')
  10. english = input('请重新输入学生的英语成绩:')
  11. if name:
  12. stu['name'] = str(name)
  13. if chinese:
  14. stu['chinese'] = int(chinese)
  15. if math:
  16. stu['math'] = int(math)
  17. if english:
  18. stu['english'] = int(english)
  19. stu['total'] = stu['chinese'] + stu['math'] + stu['english']
  20. break
  21. else:
  22. print('该学生不存在, 请检查名字是否输入正确!')
  23. s_write_to_file(students)

5.保存学生成绩信息函数

主要实现学生成绩信息的保存更新。

  1. def s_write_to_file(students):
  2. f=open("students.txt","r+")
  3. for s in students:
  4. f.write(str(s)+"\n")
  5. f.close()

完整源代码

  1. def s_write_to_file(students):
  2. f=open("students.txt","r+")
  3. for s in students:
  4. f.write(str(s)+"\n")
  5. f.close()
  6. def s_display(students):
  7. print('1. 显示全部信息')
  8. print('姓名\t语文\t数学\t英语\t总分')
  9. for stu in students:
  10. print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')
  11. def s_new(students):
  12. print('2. 新建学生信息')
  13. name = str(input('请输入学生的姓名:'))
  14. chinese = int(input('请输入学生的语文成绩:'))
  15. math = int(input('请输入学生的数学成绩:'))
  16. english = int(input('请输入学生的英语成绩:'))
  17. total = chinese + math + english
  18. stu = {'name': name, 'chinese': chinese, 'math': math, 'english': english, 'total': total}
  19. students.append(stu)
  20. s_write_to_file(students)
  21. def s_find(students):
  22. print('3. 查询学生信息')
  23. name = input('请输入你要查询学生的姓名:')
  24. for stu in students:
  25. if name == stu['name']:
  26. print('姓名\t语文\t数学\t英语\t总分')
  27. print(f'{stu["name"]}\t{stu["chinese"]}\t{stu["math"]}\t{stu["english"]}\t{stu["total"]}')
  28. break
  29. else:
  30. print('该学生不存在, 请检查名字是否输入正确!')
  31. s_write_to_file(students)
  32. def s_delect(students):
  33. print('4. 删除学生信息')
  34. name = input('请输入你要删除学生的姓名:')
  35. for stu in students:
  36. if name == stu['name']:
  37. students.remove(stu)
  38. break
  39. else:
  40. print('该学生不存在, 请检查名字是否输入正确!')
  41. s_write_to_file(students)
  42. def s_modify(students):
  43. print('5. 修改学生信息')
  44. name = input('请输入你要修改学生的姓名:')
  45. for stu in students:
  46. if name == stu['name']:
  47. print('(如果不想修改,直接回车!)')
  48. name = input('请重新输入学生的姓名:')
  49. chinese = input('请重新输入学生的语文成绩:')
  50. math = input('请重新输入学生的数学成绩:')
  51. english = input('请重新输入学生的英语成绩:')
  52. if name:
  53. stu['name'] = str(name)
  54. if chinese:
  55. stu['chinese'] = int(chinese)
  56. if math:
  57. stu['math'] = int(math)
  58. if english:
  59. stu['english'] = int(english)
  60. stu['total'] = stu['chinese'] + stu['math'] + stu['english']
  61. break
  62. else:
  63. print('该学生不存在, 请检查名字是否输入正确!')
  64. s_write_to_file(students)
  65. if __name__=="__main__":
  66. s_info = """
  67. *****************************************************
  68. 【学生成绩管理系统】
  69. q. 退出学生成绩系统
  70. 1. 显示学生成绩信息
  71. 2. 新建学生成绩信息
  72. 3. 查询学生成绩信息
  73. 4. 删除学生成绩信息
  74. 5. 修改学生成绩信息
  75. ******************************************************"""
  76. students=[]
  77. f=open("students.txt","r+")
  78. for st in f.readlines():
  79. students.append(eval(st))
  80. f.close()
  81. while True:
  82. print(s_info)
  83. handle = input('请选择你要的操作选项:')
  84. if handle == 'q':
  85. print('q. 退出系统')
  86. break
  87. elif handle == '1':
  88. s_display(students)
  89. elif handle == '2':
  90. s_new(students)
  91. elif handle == '3':
  92. s_find(students)
  93. elif handle == '4':
  94. s_delect(students)
  95. elif handle == '5':
  96. s_modify(students)
  97. else:
  98. print('请输入正确的操作选项!')

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

点此免费领取:CSDN大礼包:《python学习路线&全套学习资料》免费分享

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。
在这里插入图片描述

二、Python必备开发工具

在这里插入图片描述

四、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。
在这里插入图片描述

五、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

六、Python练习题

检查学习结果。
在这里插入图片描述

七、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。
在这里插入图片描述
在这里插入图片描述
这份完整版的Python全套学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】

文章知识点与官方知识档案匹配,可进一步学习相关知识
Python入门技能树首页概览429216 人正在系统学习中
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/天景科技苑/article/detail/769055
推荐阅读
相关标签
  

闽ICP备14008679号