基于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传递参数方式小结
Apr 17 Python
python读取TXT到数组及列表去重后按原来顺序排序的方法
Jun 26 Python
Python Requests安装与简单运用
Apr 07 Python
Python实现简单遗传算法(SGA)
Jan 29 Python
Python进度条实时显示处理进度的示例代码
Jan 30 Python
python如何让类支持比较运算
Mar 20 Python
Python可变参数*args和**kwargs用法实例小结
Apr 27 Python
Python3中的列表生成式、生成器与迭代器实例详解
Jun 11 Python
用python实现将数组元素按从小到大的顺序排列方法
Jul 02 Python
python识别文字(基于tesseract)代码实例
Aug 24 Python
Python Django中的STATIC_URL 设置和使用方式
Mar 27 Python
详解MindSpore自定义模型损失函数
Jun 30 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
php生成xml简单实例代码
2009/12/16 PHP
ThinkPHP中自定义错误页面和提示页面实例
2014/11/22 PHP
php读取csv文件并输出的方法
2015/03/14 PHP
php+redis实现消息队列功能示例
2019/09/19 PHP
top.location.href 没有权限 解决方法
2008/08/05 Javascript
JavaScript 原型继承
2011/12/26 Javascript
onclick与listeners的执行先后问题详细解剖
2013/01/07 Javascript
JavaScript验证电子邮箱的函数
2014/08/22 Javascript
实用又漂亮的BootstrapValidator表单验证插件
2016/05/30 Javascript
js中常用的Tab切换效果(推荐)
2016/08/30 Javascript
微信小程序中单位rpx和rem的使用
2016/12/06 Javascript
使用bootstrap-paginator.js 分页来进行ajax 异步分页请求示例
2017/03/09 Javascript
BootStrap selectpicker后台动态绑定数据
2017/06/01 Javascript
node简单实现一个更改头像功能的示例
2017/12/29 Javascript
微信小程序使用canvas的画图操作示例
2019/01/18 Javascript
使用vue重构资讯页面的实例代码解析
2019/11/26 Javascript
JS数组Reduce方法功能与用法实例详解
2020/04/29 Javascript
Python深入06——python的内存管理详解
2016/12/07 Python
用python实现k近邻算法的示例代码
2018/09/06 Python
Django中的ajax请求
2018/10/19 Python
Python中使用threading.Event协调线程的运行详解
2020/05/02 Python
Django+Celery实现动态配置定时任务的方法示例
2020/05/26 Python
python和JavaScript哪个容易上手
2020/06/23 Python
python实现测试工具(二)——简单的ui测试工具
2020/10/19 Python
世界上最大的在线旅行社新加坡网站:Expedia新加坡
2016/08/25 全球购物
方正Java笔试题
2014/07/03 面试题
药学专业毕业生求职信
2013/10/20 职场文书
初中生期末考试的自我评价
2013/12/17 职场文书
会计助理岗位职责
2014/02/17 职场文书
献爱心标语
2014/06/21 职场文书
民主生活会对照检查材料
2014/09/22 职场文书
中学社团活动总结
2015/05/07 职场文书
幼儿园体操比赛口号
2015/12/25 职场文书
四年级作文之说明文作文
2019/10/14 职场文书
纯html+css实现奥运五环的示例代码
2021/08/02 HTML / CSS
sql时间段切分实现每隔x分钟出一份高速门架车流量
2022/02/28 SQL Server