python学生管理系统开发


Posted in Python onJanuary 30, 2019

本文实例为大家分享了python学生管理系统开发的具体代码,供大家参考,具体内容如下

学生管理系统(基础版)

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

学生管理系统(函数版)

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

main()

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

Python 相关文章推荐
详细解析Python中__init__()方法的高级应用
May 11 Python
Python之reload流程实例代码解析
Jan 29 Python
详解Python连接MySQL数据库的多种方式
Apr 16 Python
python如何实现数据的线性拟合
Jul 19 Python
详解Python并发编程之从性能角度来初探并发编程
Aug 23 Python
python函数不定长参数使用方法解析
Dec 14 Python
python+opencv3生成一个自定义纯色图教程
Feb 19 Python
Python视频编辑库MoviePy的使用
Apr 01 Python
PyCharm MySQL可视化Database配置过程图解
Jun 09 Python
Python time库的时间时钟处理
May 02 Python
pytorch 权重weight 与 梯度grad 可视化操作
Jun 05 Python
Python 处理表格进行成绩排序的操作代码
Jul 26 Python
Python修改文件往指定行插入内容的实例
Jan 30 #Python
python学生管理系统
Jan 30 #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
You might like
基于jquery DOM写的类似微博发布的效果
2012/10/20 Javascript
addEventListener 的用法示例介绍
2014/05/07 Javascript
node.js+Ajax实现获取HTTP服务器返回数据
2014/11/26 Javascript
JavaScript中的Primitive对象封装介绍
2014/12/31 Javascript
Jquery结合HTML5实现文件上传
2015/06/25 Javascript
gameboy网页闯关游戏(riddle webgame)--仿微信聊天的前端页面设计和难点
2016/02/21 Javascript
javascript每日必学之封装
2016/02/23 Javascript
基于jQuery实现的查看全文功能【实用】
2016/12/11 Javascript
JS基于面向对象实现的选项卡效果示例
2016/12/20 Javascript
深入理解Angularjs向指令传递数据双向绑定机制
2016/12/31 Javascript
Node.js 使用AngularJS的方法示例
2018/05/11 Javascript
jQuery实现图片上传预览效果功能完整实例【测试可用】
2018/05/28 jQuery
Vue 应用中结合vux使用微信 jssdk的方法
2018/08/28 Javascript
jQuery事件委托代码实践详解
2019/06/21 jQuery
8 个有用的JS技巧(推荐)
2019/07/03 Javascript
vue中通过使用$attrs实现组件之间的数据传递功能
2019/09/01 Javascript
微信小程序后端(java)开发流程的详细步骤
2019/11/13 Javascript
Python中字符编码简介、方法及使用建议
2015/01/08 Python
python出现&quot;IndentationError: unexpected indent&quot;错误解决办法
2017/10/15 Python
详解如何使用Python编写vim插件
2017/11/28 Python
Python爬虫包BeautifulSoup实例(三)
2018/06/17 Python
详解用python写一个抽奖程序
2019/05/10 Python
PyQt4编程之让状态栏显示信息的方法
2019/06/18 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
2020/03/30 Python
Win10下用Anaconda安装TensorFlow(图文教程)
2020/06/18 Python
Python内置函数property()如何使用
2020/09/01 Python
h5移动端调用支付宝、微信支付的实现
2020/06/08 HTML / CSS
英国亚马逊官方网站:Amazon.co.uk
2019/08/09 全球购物
毕业生求职自荐信怎么写
2014/01/08 职场文书
房屋买卖协议书范本
2014/04/10 职场文书
幼儿园中班上学期评语
2014/04/18 职场文书
五分钟演讲稿
2014/04/30 职场文书
2014机关干部学习“焦裕禄精神”思想汇报
2014/09/19 职场文书
群众路线教师自我剖析材料
2014/09/29 职场文书
公司领导班子召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
名人传读书笔记
2015/06/26 职场文书