当前位置:   article > 正文

python--函数应用:学生管理系统_python 学生信息 函数版

python 学生信息 函数版

主要的步骤:

  1. 增删改查操作:

  1. 储存学生信息:

  1. (姓名,年龄,班级,性别......)

  1. 储存所有的学生信息:

列表:[{},{},{}......]

5.功能菜单,业务框架。


  1. 搭建业务框架

  • 添加学生

  • 删除学生

  • 修改学生信息

  • 查询单个学生信息

  • 查询所有学生信息

  • 退出系统

  • 请选择要进行的操作编号:

  1. def show_menu():
  2. print('1.添加学生')
  3. print('2.删除学生')
  4. print('3.修改学生信息')
  5. print('4.查询单个学生信息')
  6. print('5.查询所有的学生信息')
  7. print('6.退出系统')
  8. while True:
  9. show_menu()
  10. opt = input('选择要进行的标号:')
  11. if opt == '1':
  12. print('1.添加学生')
  13. elif opt == '2':
  14. print('2.删除学生')
  15. elif opt == '3':
  16. print('3.修改学生信息')
  17. elif opt == '4':
  18. print('4.查询单个学生信息')
  19. elif opt == '4':
  20. print('5.查询所有的学生信息')
  21. elif opt == '6':
  22. print('6.退出系统')
  23. else:
  24. print('输入有误,请重新输入')
  25. continue
  26. input('-----请按回车键在进行操作-------')

添加学生信息

  • 通过input函数获取学生的信息,姓名,年龄,性别

  • 将学生信息转换为字典进行保存

  • 将这个学生字典添加的列表中

  • 代码优化:假设学生的名字不重复,在添加学生的时候,进行判断,如果学生姓名已经存在,则比添加。

  1. def show_menu():
  2. print('1.添加学生')
  3. print('2.删除学生')
  4. print('3.修改学生信息')
  5. print('4.查询单个学生信息')
  6. print('5.查询所有的学生信息')
  7. print('6.退出系统')
  8. stud_list = []
  9. def insert_studet():
  10. # 通过input函数获取学生的信息,姓名,年龄,性别
  11. name = input('输入学生姓名:')
  12. for j in stud_list:
  13. if j['name'] == name:
  14. print('学生信息存在,不在添加')
  15. return # 结束函数执行
  16. age = input('输入学生年龄:')
  17. gender = input('输入学生性别:')
  18. # • 将学生信息转换为字典进行保存
  19. stud_dict = {'name': name, 'age': age, 'gender': gender}
  20. # • 将这个学生字典添加的列表中
  21. stud_list.append(stud_dict)
  22. print('------------学生信息添加成功-------------')
  23. def show_all_stud():
  24. if len(stud_list):
  25. for i in stud_list:
  26. print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
  27. else:
  28. print('目前没有学生信息')
  29. while True:
  30. show_menu()
  31. opt = input('选择要进行的标号:')
  32. if opt == '1':
  33. print('1.添加学生')
  34. insert_studet()
  35. elif opt == '2':
  36. print('2.删除学生')
  37. elif opt == '3':
  38. print('3.修改学生信息')
  39. elif opt == '4':
  40. print('4.查询单个学生信息')
  41. elif opt == '5':
  42. print('5.查询所有的学生信息')
  43. show_all_stud()
  44. elif opt == '6':
  45. print('6.退出系统')
  46. break
  47. else:
  48. print('输入有误,请重新输入')
  49. continue
  50. input('-----请按回车键在进行操作-------')

删除/修改/查询学生信息

  • 都使用name对学生进行判断

  • 使用input获取要删除/修改/查询的学生姓名

  • 判断学生信息是否存在

  • 学生存在,对学生进行 删除/修改/查询 操作

  • 学生信息不存在,直接结束

完整代码进行编写完成:

  1. def show_menu():
  2. print('1.添加学生')
  3. print('2.删除学生')
  4. print('3.修改学生信息')
  5. print('4.查询单个学生信息')
  6. print('5.查询所有的学生信息')
  7. print('6.退出系统')
  8. stud_list = []
  9. def insert_studet():
  10. # 通过input函数获取学生的信息,姓名,年龄,性别
  11. name = input('输入学生姓名:')
  12. for j in stud_list:
  13. if j['name'] == name:
  14. print('学生信息存在,不在添加')
  15. return # 结束函数执行
  16. age = input('输入学生年龄:')
  17. gender = input('输入学生性别:')
  18. # • 将学生信息转换为字典进行保存
  19. stud_dict = {'name': name, 'age': age, 'gender': gender}
  20. # • 将这个学生字典添加的列表中
  21. stud_list.append(stud_dict)
  22. print('------------学生信息添加成功-------------')
  23. def stud_remove():
  24. # 使用input获取要删除/修改/查询 的学生姓名
  25. name = input('输入学生名字')
  26. for stud in stud_list:
  27. # 判断学生信息是否存在
  28. if name == stud['name']:
  29. print('学生姓名存在')
  30. # 学生信息存在,对学生进行 删除/修改/查询/操作
  31. stud_list.remove(stud) # 删除整个字典
  32. return
  33. else:
  34. print('该学生信息不存在,无法删除')
  35. def stud_modify():
  36. name = input('输入学生名字')
  37. for stud in stud_list:
  38. if name == stud['name']:
  39. stud['age'] = int(input('输入新的年龄:'))
  40. return
  41. else:
  42. print('该学生信息不存在,无法删除')
  43. def stud_single():
  44. name = input('输入查询学生姓名:')
  45. for i in stud_list:
  46. if name == i['name']:
  47. print(i)
  48. return
  49. else:
  50. print('没有查到此学生信息')
  51. def show_all_stud():
  52. if len(stud_list):
  53. for i in stud_list:
  54. print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
  55. else:
  56. print('目前没有学生信息')
  57. def main():
  58. while True:
  59. show_menu()
  60. opt = input('选择要进行的标号:')
  61. if opt == '1':
  62. print('1.添加学生')
  63. insert_studet()
  64. elif opt == '2':
  65. print('2.删除学生')
  66. stud_remove()
  67. elif opt == '3':
  68. stud_modify()
  69. print('3.修改学生信息')
  70. elif opt == '4':
  71. print('4.查询单个学生信息')
  72. stud_single()
  73. elif opt == '5':
  74. print('5.查询所有的学生信息')
  75. show_all_stud()
  76. elif opt == '6':
  77. print('6.退出系统')
  78. break
  79. else:
  80. print('输入有误,请重新输入')
  81. continue
  82. input('-----请按回车键在进行操作-------')
  83. main()

1.文件进行保存

  1. ###---------------------学生管理系统-----------------
  2. def show_menu():
  3. print('1.添加学生')
  4. print('2.删除学生')
  5. print('3.修改学生信息')
  6. print('4.查询单个学生信息')
  7. print('5.查询所有的学生信息')
  8. print('6.退出系统')
  9. stud_list = []
  10. def insert_studet():
  11. # 通过input函数获取学生的信息,姓名,年龄,性别
  12. name = input('输入学生姓名:')
  13. for j in stud_list:
  14. if j['name'] == name:
  15. print('学生信息存在,不在添加')
  16. return # 结束函数执行
  17. age = input('输入学生年龄:')
  18. gender = input('输入学生性别:')
  19. # • 将学生信息转换为字典进行保存
  20. stud_dict = {'name': name, 'age': age, 'gender': gender}
  21. # • 将这个学生字典添加的列表中
  22. stud_list.append(stud_dict)
  23. print('------------学生信息添加成功-------------')
  24. def stud_remove():
  25. # 使用input获取要删除/修改/查询 的学生姓名
  26. name = input('输入学生名字')
  27. for stud in stud_list:
  28. # 判断学生信息是否存在
  29. if name == stud['name']:
  30. print('学生姓名存在')
  31. # 学生信息存在,对学生进行 删除/修改/查询/操作
  32. stud_list.remove(stud) # 删除整个字典
  33. return
  34. else:
  35. print('该学生信息不存在,无法删除')
  36. def stud_modify():
  37. name = input('输入学生名字')
  38. for stud in stud_list:
  39. if name == stud['name']:
  40. stud['age'] = int(input('输入新的年龄:'))
  41. return
  42. else:
  43. print('该学生信息不存在,无法删除')
  44. def stud_single():
  45. name = input('输入查询学生姓名:')
  46. for i in stud_list:
  47. if name == i['name']:
  48. print(i)
  49. return
  50. else:
  51. print('没有查到此学生信息')
  52. def show_all_stud():
  53. if len(stud_list):
  54. for i in stud_list:
  55. print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
  56. else:
  57. print('目前没有学生信息')
  58. def save():
  59. f = open('student.txt', 'w')
  60. f.write(str(stud_list))
  61. f.close() #文件保存方法
  62. def main():
  63. while True:
  64. show_menu()
  65. opt = input('选择要进行的标号:')
  66. if opt == '1':
  67. print('1.添加学生')
  68. insert_studet()
  69. elif opt == '2':
  70. print('2.删除学生')
  71. stud_remove()
  72. elif opt == '3':
  73. stud_modify()
  74. print('3.修改学生信息')
  75. elif opt == '4':
  76. print('4.查询单个学生信息')
  77. stud_single()
  78. elif opt == '5':
  79. print('5.查询所有的学生信息')
  80. show_all_stud()
  81. elif opt == '6':
  82. save()
  83. print('6.退出系统')
  84. break
  85. else:
  86. print('输入有误,请重新输入')
  87. continue
  88. input('-----请按回车键在进行操作-------')
  89. main()
  1. 文件进行读取

  1. 进行优化

  1. ###---------------------学生管理系统-----------------
  2. import os
  3. def show_menu():
  4. print('1.添加学生')
  5. print('2.删除学生')
  6. print('3.修改学生信息')
  7. print('4.查询单个学生信息')
  8. print('5.查询所有的学生信息')
  9. print('6.退出系统')
  10. stud_list = []
  11. def insert_studet():
  12. # 通过input函数获取学生的信息,姓名,年龄,性别
  13. name = input('输入学生姓名:')
  14. for j in stud_list:
  15. if j['name'] == name:
  16. print('学生信息存在,不在添加')
  17. return # 结束函数执行
  18. age = input('输入学生年龄:')
  19. gender = input('输入学生性别:')
  20. # • 将学生信息转换为字典进行保存
  21. stud_dict = {'name': name, 'age': age, 'gender': gender}
  22. # • 将这个学生字典添加的列表中
  23. stud_list.append(stud_dict)
  24. print('------------学生信息添加成功-------------')
  25. def stud_remove():
  26. # 使用input获取要删除/修改/查询 的学生姓名
  27. name = input('输入学生名字')
  28. for stud in stud_list:
  29. # 判断学生信息是否存在
  30. if name == stud['name']:
  31. print('学生姓名存在')
  32. # 学生信息存在,对学生进行 删除/修改/查询/操作
  33. stud_list.remove(stud) # 删除整个字典
  34. return
  35. else:
  36. print('该学生信息不存在,无法删除')
  37. def stud_modify():
  38. name = input('输入学生名字')
  39. for stud in stud_list:
  40. if name == stud['name']:
  41. stud['age'] = int(input('输入新的年龄:'))
  42. return
  43. else:
  44. print('该学生信息不存在,无法删除')
  45. def stud_single():
  46. name = input('输入查询学生姓名:')
  47. for i in stud_list:
  48. if name == i['name']:
  49. print(i)
  50. return
  51. else:
  52. print('没有查到此学生信息')
  53. def show_all_stud():
  54. if len(stud_list):
  55. for i in stud_list:
  56. print(f'姓名:{i["name"]},年龄:{i["age"]},性别:{i["gender"]}')
  57. else:
  58. print('目前没有学生信息')
  59. def save():
  60. f = open('student.txt', 'w')
  61. f.write(str(stud_list))
  62. f.close() # 文件保存方法
  63. def read(): # 读取文件
  64. global stud_list
  65. if os.path.exists('student.txt'):
  66. f = open('student.txt', 'r', encoding='utf-8')
  67. buf = f.read()
  68. if buf:
  69. stud_list = eval(buf) # eval()去除引号
  70. f.close()
  71. def main():
  72. while True:
  73. show_menu()
  74. opt = input('选择要进行的标号:')
  75. if opt == '1':
  76. print('1.添加学生')
  77. insert_studet()
  78. elif opt == '2':
  79. print('2.删除学生')
  80. stud_remove()
  81. elif opt == '3':
  82. stud_modify()
  83. print('3.修改学生信息')
  84. elif opt == '4':
  85. print('4.查询单个学生信息')
  86. stud_single()
  87. elif opt == '5':
  88. print('5.查询所有的学生信息')
  89. show_all_stud()
  90. elif opt == '6':
  91. save()
  92. print('6.退出系统')
  93. break
  94. else:
  95. print('输入有误,请重新输入')
  96. continue
  97. input('-----请按回车键在进行操作-------')
  98. main()

这次的学生管理系统详细编写,大家可以看看!!!

如有错误,大家可以纠正!!!

#----------------python函数补充内容---------

注意:跟上面的学生管理系统无关!!!纯属补充内容!!!

  1. def func(*args, **kwargs):
  2. print('args', args)
  3. print('kwargs', kwargs)
  4. num = 0
  5. for i in args:
  6. num += i
  7. for j in kwargs.values():
  8. num += j
  9. print(f'求和结果为{num}')
  10. my_list = [1, 2, 3, 4, 5, 6]
  11. my_dict = {'a': 7, 'b': 8, 'c': 9, 'd': 10}
  12. # func(my_list) # 将列表作为一个数据进行传递
  13. # func(*my_list) # 将列表中的每个数据作为位置参数进行传递,拆包
  14. func(my_dict) # 将my_dict 作为一个位置实参进行传递
  15. func(*my_dict) # 将my_dict 中的key作为位置实参进行传递
  16. func(**my_dict) # 将my_dict中键值对作为关键字实参进行传递

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/594046
推荐阅读
相关标签
  

闽ICP备14008679号