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 dict 字典 以及 赋值 引用的一些实例(详解)
Jan 20 Python
Python管理Windows服务小脚本
Mar 12 Python
10分钟教你用Python实现微信自动回复功能
Nov 28 Python
Python3批量生成带logo的二维码方法
Jun 24 Python
django-crontab实现服务端的定时任务的示例代码
Feb 17 Python
Python @property及getter setter原理详解
Mar 31 Python
使用K.function()调试keras操作
Jun 17 Python
python redis存入字典序列化存储教程
Jul 16 Python
python PyAUtoGUI库实现自动化控制鼠标键盘
Sep 09 Python
matplotlib 多个图像共用一个colorbar的实现示例
Sep 10 Python
python中实现词云图的示例
Dec 19 Python
实例讲解Python中sys.argv[]的用法
Jun 03 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
用mysql内存表来代替php session的类
2009/02/01 PHP
ThinkPHP中类的构造函数_construct()与_initialize()的区别详解
2017/03/13 PHP
php提交表单时保留多个空格及换行的文本样式的方法
2017/06/20 PHP
javascript中巧用“闭包”实现程序的暂停执行功能
2007/04/04 Javascript
javascript获取元素CSS样式代码示例
2013/11/28 Javascript
javascript继承的六大模式小结
2015/04/13 Javascript
jquery使用经验小结
2015/05/20 Javascript
nodejs 中模拟实现 emmiter 自定义事件
2016/02/22 NodeJs
基于jquery实现即时检查格式是否正确的表单
2016/05/06 Javascript
原生JavaScript编写canvas版的连连看游戏
2016/05/29 Javascript
jquery实现拖动效果(代码分享)
2017/01/25 Javascript
javascript深拷贝的原理与实现方法分析
2017/04/10 Javascript
jquery加载单文件vue组件的方法
2017/06/20 jQuery
jquery获取元素到屏幕四周可视距离的方法
2018/09/05 jQuery
jQuery实现鼠标移入移出事件切换功能示例
2018/09/06 jQuery
详解Vue用cmd创建项目
2019/02/12 Javascript
vue实现todolist功能、todolist组件拆分及todolist的删除功能
2019/04/11 Javascript
js实现web调用摄像头 js截取视频画面
2019/04/21 Javascript
小程序异步问题之多个网络请求依次执行并依次收集请求结果
2019/05/05 Javascript
对layui中的onevent 和event的使用详解
2019/09/06 Javascript
layui复选框限制选择个数的方法
2019/09/18 Javascript
js函数和this用法实例分析
2020/03/13 Javascript
JS变量提升及函数提升实例解析
2020/09/03 Javascript
JS异步宏队列微队列原理详解
2020/09/09 Javascript
澳大利亚冲浪和时尚服装网上购物:SurfStitch
2017/07/29 全球购物
杭州信雅达系统.NET工程师面试试题
2015/02/08 面试题
珍珠奶茶店创业计划书
2014/01/11 职场文书
ktv总经理岗位职责
2014/02/17 职场文书
股权转让协议书范本
2014/04/12 职场文书
机械工程师岗位职责
2014/06/16 职场文书
优秀党员先进事迹材料
2014/12/18 职场文书
致短跑运动员加油稿
2015/07/21 职场文书
关于感恩老师的古诗句
2019/08/20 职场文书
详解vue身份认证管理和租户管理
2021/05/25 Vue.js
让文件路径提取变得更简单的Python Path库
2021/05/27 Python