python学生管理系统


Posted in Python onJanuary 30, 2019

这几天开始接触了python语言,这语言相对c语言简洁了不少,语言真是一通百通,学起来还是比较轻松,在熟悉了基本语法,列表(序列),元组以及字典之后写了一个最基础简单的的学生管理系统

能完成的功能有:

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

学生信息中,学号是唯一的,所以进行删除,修改,查询都会有学号的唯一的检测

1.框架显示以及添加学生的功能

python学生管理系统

2.添加两个学生之后,进行显示功能

python学生管理系统

3.删除功能,以及其他也都有学号唯一检测功能!

python学生管理系统

4.修改信息功能

python学生管理系统

5.查询信息以及退出界面

python学生管理系统

接下来是代码

#encoding utf=8
#定义一个函数,显示可以使用的功能列表给用户
def showInfo():
 print("-"*30)
 print(" 学生管理系统 v1.0")
 print(" 1.添加学生的信息")
 print(" 2.删除学生的信息")
 print(" 3.修改学生的信息")
 print(" 4.查询学生的信息")
 print(" 5.遍历所有学生的信息")
 print(" 6.退出系统")
 print( '-'*30)
 
#定义一个列表,用来存储多个学生的信息
students=[]
 
 
while True:
 #把功能列表进行显示给用户
 showInfo()
 
 #提示用户选择功能
 #获取用户选择的功能
 key = int(input("请选择功能(序号):"))
 
 #根据用户选择,完成相应功能
 if key == 1:
 print("您选择了添加学生信息功能")
 name = input("请输入学生姓名:")
 stuId = input("请输入学生学号(学号不可重复):")
 age = input("请输入学生年龄:")
 
 #验证学号是否唯一
 i = 0
 leap = 0
 for temp in students:
  if temp['id'] == stuId:
  leap = 1
  break
  else:
  i = i + 1
 if leap == 1:
  print("输入学生学号重复,添加失败!")
  break
 else:
  # 定义一个字典,存放单个学生信息
  stuInfo = {}
  stuInfo['name'] = name
  stuInfo['id'] = stuId
  stuInfo['age'] = age
 
  # 单个学生信息放入列表
  students.append(stuInfo)
  print("添加成功!")
 
 elif key == 2:
 print("您选择了删除学生功能")
 delId=input("请输入要删除的学生学号:")
 #i记录要删除的下标,leap为标志位,如果找到leap=1,否则为0
 i = 0
 leap = 0
 for temp in students:
  if temp['id'] == delId:
  leap = 1
  break
  else:
  i=i+1
 if leap == 0:
  print("没有此学生学号,删除失败!")
 else:
  del students[i]
  print("删除成功!")
 
 
 elif key == 3:
 print("您选择了修改学生信息功能")
 alterId=input("请输入你要修改学生的学号:")
 #检测是否有此学号,然后进行修改信息
 i = 0
 leap = 0
 for temp in students:
  if temp['id'] == alterId:
  leap = 1
  break
  else:
  i = i + 1
 if leap == 1:
  while True:
  alterNum=int(input(" 1.修改学号\n 2.修改姓名 \n 3.修改年龄 \n 4.退出修改\n"))
  if alterNum == 1:
   newId=input("输入更改后的学号:")
   #修改后的学号要验证是否唯一
   i = 0
   leap1 = 0
   for temp1 in students:
   if temp1['id'] == newId:
    leap1 = 1
    break
   else:
    i = i + 1
   if leap1 == 1:
   print("输入学号不可重复,修改失败!")
   else:
   temp['id']=newId
   print("学号修改成功")
  elif alterNum == 2:
   newName=input("输入更改后的姓名:")
   temp['name'] = newName
   print("姓名修改成功")
  elif alterNum == 3:
   newAge=input("输入更改后的年龄:")
   temp['age'] = newAge
   print("年龄修改成功")
  elif alterNum == 4:
   break
  else:
   print("输入错误请重新输入")
 else:
  print("没有此学号,修改失败!")
 elif key == 4:
 print("您选择了查询学生信息功能")
 searchID=input("请输入你要查询学生的学号:")
 #验证是否有此学号
 i = 0
 leap = 0
 for temp in students:
  if temp['id'] == searchID:
  leap = 1
  break
  else:
  i = i + 1
 if leap == 0:
  print("没有此学生学号,查询失败!")
 else:
  print("找到此学生,信息如下:")
  print("学号:%s\n姓名:%s\n年龄:%s\n"%(temp['id'],temp['name'],temp['age']))
 elif key == 5:
 #遍历并输出所有学生的信息
 print('*'*20)
 print("接下来进行遍历所有的学生信息...")
 print("id 姓名  年龄")
 for temp in students:
  print("%s %s %s"%(temp['id'],temp['name'],temp['age']))
 print("*"*20)
 elif key == 6:
 #退出功能,尽量往不退出的方向引
 quitconfirm = input("亲,真的要退出么 (yes或者no)??~~(>_<)~~??")
 if quitconfirm == 'yes':
  print("欢迎使用本系统,谢谢")
  break;
 else:
 print("您输入有误,请重新输入")

一些功能模块在后续会做成函数调用的方式,可以使程序看起来更加简洁。

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

Python 相关文章推荐
python分割文件的常用方法
Nov 01 Python
python处理按钮消息的实例详解
Jul 11 Python
浅谈python中copy和deepcopy中的区别
Oct 23 Python
Python标准库shutil用法实例详解
Aug 13 Python
windows下安装Python虚拟环境virtualenvwrapper-win
Jun 14 Python
dpn网络的pytorch实现方式
Jan 14 Python
解决pycharm每次打开项目都需要配置解释器和安装库问题
Feb 26 Python
python GUI库图形界面开发之PyQt5访问系统剪切板QClipboard类详细使用方法与实例
Feb 27 Python
pycharm中import呈现灰色原因的解决方法
Mar 04 Python
python小程序之4名牌手洗牌发牌问题解析
May 15 Python
Python+PyQt5+MySQL实现天气管理系统
Jun 16 Python
Python中tkinter的用户登录管理的实现
Apr 22 Python
selenium+python截图不成功的解决方法
Jan 30 #Python
python列表使用实现名字管理系统
Jan 30 #Python
Python基本socket通信控制操作示例
Jan 30 #Python
Python mutiprocessing多线程池pool操作示例
Jan 30 #Python
Python多线程处理实例详解【单进程/多进程】
Jan 30 #Python
Python读取Pickle文件信息并计算与当前时间间隔的方法分析
Jan 30 #Python
python实现烟花小程序
Jan 30 #Python
You might like
高亮度显示php源代码
2006/10/09 PHP
提升PHP性能的21种方法介绍
2013/06/25 PHP
PHP定时更新程序设计思路分享
2014/06/10 PHP
Yii多表联合查询操作详解
2016/06/02 PHP
php自定义扩展名获取函数示例
2016/12/12 PHP
PHP多进程通信-消息队列使用
2019/03/08 PHP
自己使用jquery写的一个无缝滚动的插件
2014/04/30 Javascript
JavaScript静态类型检查工具FLOW简介
2015/01/06 Javascript
js实现不提交表单获取单选按钮值的方法
2015/08/21 Javascript
JavaScript之Vue.js【入门基础】
2016/12/06 Javascript
angularjs+bootstrap菜单的使用示例代码
2017/03/07 Javascript
详解webpack+es6+angular1.x项目构建
2017/05/02 Javascript
薪资那么高的Web前端必看书单
2017/10/13 Javascript
JS中的BOM应用
2018/02/02 Javascript
JavaScript复制内容到剪贴板的两种常用方法
2018/02/27 Javascript
使用mpvue搭建一个初始小程序及项目配置方法
2018/12/03 Javascript
Three.js实现简单3D房间布局
2018/12/30 Javascript
[01:48]2018DOTA2亚洲邀请赛主赛事第二日五佳镜头 VG完美团战逆转TNC
2018/04/05 DOTA
[48:27]EG vs Liquid 2018国际邀请赛淘汰赛BO3 第二场 8.25
2018/08/29 DOTA
跟老齐学Python之集合的关系
2014/09/24 Python
Windows下PyCharm2018.3.2 安装教程(图文详解)
2019/10/24 Python
Python爬取豆瓣视频信息代码实例
2019/11/16 Python
Python编写单元测试代码实例
2020/09/10 Python
python通过cython加密代码
2020/12/11 Python
python tkinter实现下载进度条及抖音视频去水印原理
2021/02/07 Python
特步官方商城:Xtep
2017/03/21 全球购物
英国殿堂级有机护肤品牌:Rodial
2017/04/17 全球购物
Lentiamo比利时:便宜的隐形眼镜
2020/02/14 全球购物
总经理助理工作职责
2014/02/06 职场文书
初中军训感想300字
2014/03/05 职场文书
商务专员岗位职责范本
2014/06/29 职场文书
个人四风问题原因分析及整改措施
2014/09/28 职场文书
个人职业及收入证明
2014/10/13 职场文书
2014年幼儿园学期工作总结
2014/12/05 职场文书
休学证明范本
2015/06/19 职场文书
《桂花雨》教学反思
2016/02/19 职场文书