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而不是Java?
Mar 07 Python
TensorFlow平台下Python实现神经网络
Mar 10 Python
Python selenium抓取微博内容的示例代码
May 17 Python
使用Python实现跳帧截取视频帧
May 31 Python
Python初学者常见错误详解
Jul 02 Python
python3在同一行内输入n个数并用列表保存的例子
Jul 20 Python
Python产生一个数值范围内的不重复的随机数的实现方法
Aug 21 Python
python 实现简单的FTP程序
Dec 27 Python
Keras load_model 导入错误的解决方式
Jun 09 Python
Python 使用Opencv实现目标检测与识别的示例代码
Sep 08 Python
python源码剖析之PyObject详解
May 18 Python
浅谈python中的多态
Jun 15 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
PHP 多进程 解决难题
2009/06/22 PHP
解析htaccess伪静态的规则
2013/06/18 PHP
PHP在网页中动态生成PDF文件详细教程
2014/07/05 PHP
php检查字符串中是否包含7位GSM字符的方法
2015/03/17 PHP
Laravel Reponse响应客户端示例详解
2020/09/03 PHP
JavaScript检测弹出窗口是否已经关闭的方法
2015/03/24 Javascript
Jsonp post 跨域方案
2015/07/06 Javascript
jQuery实现的分子运动小球碰撞效果
2016/01/27 Javascript
初识angular框架后的所思所想
2016/02/19 Javascript
js实现非常棒的弹出div
2016/10/06 Javascript
最实用的jQuery分页插件
2016/10/09 Javascript
JS三目运算(三元运算)方法详解
2017/03/01 Javascript
node下使用UglifyJS压缩合并JS文件的方法
2018/03/07 Javascript
Vue.js自定义事件的表单输入组件方法
2018/03/08 Javascript
vue中的双向数据绑定原理与常见操作技巧详解
2020/03/16 Javascript
Vue父子之间值传递的实例教程
2020/07/02 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
[00:50]2014DOTA2国际邀请赛 NEWBEE战队回顾
2014/08/01 DOTA
Python排序搜索基本算法之冒泡排序实例分析
2017/12/09 Python
python安装模块如何通过setup.py安装(超简单)
2018/05/05 Python
使用Python实现从各个子文件夹中复制指定文件的方法
2018/10/25 Python
利用pyinstaller打包exe文件的基本教程
2019/05/02 Python
python3.6 如何将list存入txt后再读出list的方法
2019/07/02 Python
详细整理python 字符串(str)与列表(list)以及数组(array)之间的转换方法
2019/08/30 Python
基于Python实现船舶的MMSI的获取(推荐)
2019/10/21 Python
linux系统下pip升级报错的解决方法
2021/01/31 Python
基于CSS3实现的几个小loading效果
2018/09/27 HTML / CSS
详解HTML5中的picture元素响应式处理图片
2018/01/03 HTML / CSS
New Balance美国官网:运动鞋和健身服装
2017/04/11 全球购物
好莱坞百老汇御用王牌美妆:Koh Gen Do 江原道
2018/04/03 全球购物
施华洛世奇意大利官网:SWAROVSKI意大利
2018/07/23 全球购物
C#如何允许一个类被继承但是避免这个类的方法被重载?
2015/02/24 面试题
事业单位鉴定材料
2014/05/25 职场文书
中英文求职信范文
2015/03/19 职场文书
安全学习心得体会范文
2016/01/18 职场文书
Java中的随机数Random
2022/03/17 Java/Android