基于Python实现简单学生管理系统


Posted in Python onJuly 24, 2020

学生信息管理系统负责编辑学生信息,供大家参考,具体内容如下

第一次发帖,下面通过python实现一个简单的学生信息管理系统

要求如下:

1.添加学生的信息
2.删除学生的信息
3.修改的信息
4.查询学生的信息
5.遍历学生的信息
6.退出系统

写法:

1.先考虑整体的框架(即搭框架),不要刚开始就考虑函数。
2.提示用户选择功能。
3.获取用户选择的功能。
4.根据用户的选择,执行相应的功能。

代码如下:

# 0.学生管理系统界面
def showInfo():
 print("-"*30)
 print(" 学生管理系统 v1.0")
 print(" 1:添加学生的信息")
 print(" 2:删除学生的信息")
 print(" 3:修改的信息")
 print(" 4:查询学生的信息")
 print(" 5:遍历学生的信息")
 print(" 6:退出系统")
 print("-" * 30)


# 1.添加学生的信息
def addNewStu(studentsTemp):
 name = input("请输入姓名:")
 stuId = input("请输入学号:")
 age = input("请输入年龄:")

 # 2.判断是否能加这个学生:如果学生姓名已经存在报错提示;如果姓名不存在添加数据
 global students # 声明students为全局变量

 # 2.1不允许学号重复:判断用户输入的学号和列表里面字典的id对应的值相等提示
 for i in students:
  if stuId == i['id']:
   print("该学号已经存在,请重新操作!!!")
   # return作用:退出当前函数,后面添加信息的代码不执行
   return

 # 2.2如果输入的姓名不存在,添加数据:准备空字典,字典新增数据,列表追加字典
 stuInfo = {} # 2.2.1准备空字典

 # 2.2.2字典新增数据
 stuInfo['name'] = name # 如果name存在赋值修改,如果name不存在则赋值新增“name”这个变量
 stuInfo['id'] = stuId
 stuInfo['age'] = age

 # 2.2.3列表追加字典数据
 studentsTemp.append(stuInfo)



# 2.删除学生的信息
def del_info():
 # 1.用户输入要删除的学生的学号
 del_name = input("请输入要删除的姓名:")

 # 2.判断学生是否存在:存在则删除:不存在提示
 # 2.1声明students为全局变量
 global students
 # 2.2遍历列表
 for i in students:
  # 2.3判断学生是否存在:存在执行删除(列表用面的学典).break:这个系统不允许重名,删除了一个后面的不需要再遍历。不存在提示
  if del_name == i['name']:
   students.remove(i)
   break
 else: # 循环正常结束
  print("该学生不存在")
 print(students)


# 3.修改学生的信息
def modify_info():
 # 1.用户输入想要修改的学生的姓名
 modify_name = input("请输入要修改的学生的姓名:")
 # 2.判断学生是否存在:存在修改学号:不存在,提示
 # 2.1声明students是全局变量
 global students
 # 2.2遍历列表,判断输入的姓名==字典['name']
 for i in students:
  if modify_name == i['name']:
   # 将stuId修改key值,并终止此循环
   i['id'] = input("请输入新的学号:")
   break
 else:
  # 学生不存在
  print("该学生不存在")
 # 3.打印students
 print(students)


# 4.查询学生的信息
def search_info():
 # 1.用户输入目标学生姓名
 search_name = input("请输入要查询的学生的姓名:")
 # 2.检查学生是否存在:存在打印这个学生的信息;不存在则提示
 # 2.1声明students为全局变量
 global students
 # 2.2遍历students,判断输入的学号是否存在
 for i in students:
  if search_name == i['name']:
   # 学员存在:打印信息并终止循环
   print("查询到的学生信息如下----------")
   print(f"学生的学号是{i['id']},学生的姓名是{i['name']},学生的年龄是{i['age']}")
   break
 else:
  # 学生不存在的提示
  print("对不起,您查询的学生不存在,请重试!")


# 5.遍历学生的信息
def print_all():
 # 1.打印提示字
 print('学号\t姓名\t年龄')

 # 2.打印所有学生的数据
 for i in students:
  print(f"{i['id']}\t{i['name']}\t{i['age']}")


students = [] # 等待存储所有学生信息
# 系统功能需要循环使用,直在用户输入6,才退出系统
while True:
 showInfo() # 显示主界面
 key = int(input("请选择功能(序号):"))

 if key == 1:
  addNewStu(students)
 elif key == 2:
  del_info()
 elif key == 3:
  modify_info()
 elif key == 4:
  search_info()
 elif key == 5:
  print_all()
 elif key == 6:
  exit_flag = input("您确定要退出吗?yes/no\n")
  if exit_flag == 'yes':
   break
 else:
  print("输入有误,请重新输入!")

关于管理系统的更多内容请点击《管理系统专题》进行学习

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python字符串的encode与decode研究心得乱码问题解决方法
Mar 23 Python
python+mysql实现教务管理系统
Feb 20 Python
使用python PIL库实现简单验证码的去噪方法步骤
May 10 Python
java判断三位数的实例讲解
Jun 10 Python
python装饰器的特性原理详解
Dec 25 Python
解决keras backend 越跑越慢问题
Jun 18 Python
python virtualenv虚拟环境配置与使用教程详解
Jul 13 Python
Pycharm及python安装详细教程(图解)
Jul 31 Python
Python tkinter之Bind(绑定事件)的使用示例
Feb 05 Python
Python获取百度热搜的完整代码
Apr 07 Python
Python OpenGL基本配置方式
May 20 Python
python如何将mat文件转为png
Jul 15 Python
用python实现学生管理系统
Jul 24 #Python
Python 解析简单的XML数据
Jul 24 #Python
深入了解NumPy 高级索引
Jul 24 #Python
python实现学生管理系统开发
Jul 24 #Python
浅析Python 多行匹配模式
Jul 24 #Python
Python图像处理二值化方法实例汇总
Jul 24 #Python
Python如何合并多个字典或映射
Jul 24 #Python
You might like
Symfony2中被遗弃的getRequest()方法分析
2016/03/17 PHP
PHP实现绘制二叉树图形显示功能详解【包括二叉搜索树、平衡树及红黑树】
2017/11/16 PHP
JavaScript的parseInt 进制问题
2009/05/07 Javascript
JavaScript 语法集锦 脚本之家基础推荐
2009/11/15 Javascript
求数组最大最小值方法适用于任何数组
2013/08/16 Javascript
jquery验证表单中的单选与多选实例
2013/08/18 Javascript
JS将表单导出成EXCEL的实例代码
2013/11/11 Javascript
JavaScript中的style.cssText使用教程
2014/11/06 Javascript
3kb jQuery代码搞定各种树形选择的实现方法
2016/06/10 Javascript
Bootstrap图片轮播组件使用实例解析
2016/06/30 Javascript
浅谈javascript:两种注释,声明变量,定义函数
2016/09/29 Javascript
浅谈layui里的上传控件问题
2019/09/26 Javascript
vue实现淘宝购物车功能
2020/04/20 Javascript
python基础教程之基本内置数据类型介绍
2014/02/20 Python
跟老齐学Python之编写类之三子类
2014/10/11 Python
Python实现简单多线程任务队列
2016/02/27 Python
python实现读取并显示图片的两种方法
2017/01/13 Python
python 实现自动远程登陆scp文件实例代码
2017/03/13 Python
Python的多维空数组赋值方法
2018/04/13 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
python实现两张图片拼接为一张图片并保存
2019/07/16 Python
Python一键查找iOS项目中未使用的图片、音频、视频资源
2019/08/12 Python
opencv实现简单人脸识别
2021/02/19 Python
Win10下配置tensorflow-gpu的详细教程(无VS2015/2017)
2020/07/14 Python
香港士多网上超级市场:Ztore
2021/01/09 全球购物
如何配置、使用和清除Smarty缓存
2015/12/23 面试题
买房子个人收入证明
2014/01/16 职场文书
优秀教师先进事迹
2014/01/22 职场文书
企业出纳岗位职责
2014/03/12 职场文书
党员政治学习材料
2014/05/14 职场文书
优秀少先队辅导员先进事迹材料
2014/05/18 职场文书
手机被没收的检讨书
2014/10/04 职场文书
诉讼代理人授权委托书
2014/10/11 职场文书
公司禁烟通知
2015/04/23 职场文书
《百分数的认识》教学反思
2016/02/19 职场文书
win10重装系统后上不了网怎么办 win10重装系统网络故障的解决办法
2022/07/23 数码科技