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 相关文章推荐
Windows下的Python 3.6.1的下载与安装图文详解(适合32位和64位)
Feb 21 Python
TensorFlow实现RNN循环神经网络
Feb 28 Python
基于anaconda下强大的conda命令介绍
Jun 11 Python
Python实现通过继承覆盖方法示例
Jul 02 Python
Python3.6简单的操作Mysql数据库的三个实例
Oct 17 Python
学生信息管理系统Python面向对象版
Jan 30 Python
Python3几个常见问题的处理方法
Feb 26 Python
Python使用POP3和SMTP协议收发邮件的示例代码
Apr 16 Python
TensorFlow Saver:保存和读取模型参数.ckpt实例
Feb 10 Python
python实现ping命令小程序
Dec 28 Python
python requests库的使用
Jan 06 Python
python套接字socket通信
Apr 01 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
漫荒推荐:画风超赞的国风漫画推荐 超长假期不无聊
2020/03/08 国漫
一个简单php扩展介绍与开发教程
2010/08/19 PHP
php实现parent调用父类的构造方法与被覆写的方法
2015/02/11 PHP
laravel框架使用极光推送消息操作示例
2020/02/15 PHP
告诉大家什么是JSON
2008/06/10 Javascript
Javascript实现的鼠标经过时播放声音
2010/05/18 Javascript
在百度知道团队中快速审批新成员的js脚本
2014/02/02 Javascript
ajax+jQuery实现级联显示地址的方法
2015/05/06 Javascript
第一次接触Bootstrap框架
2016/10/24 Javascript
随机生成10个不重复的0-100的数字(实例讲解)
2017/08/16 Javascript
使用Vue开发动态刷新Echarts组件的教程详解
2018/03/22 Javascript
JavaScript对象的特性与实践应用深入详解
2018/12/30 Javascript
python提示No module named images的解决方法
2014/09/29 Python
Python引用传值概念与用法实例小结
2017/10/07 Python
Python实现绘制双柱状图并显示数值功能示例
2018/06/23 Python
Python使用pickle模块实现序列化功能示例
2018/07/13 Python
python中scikit-learn机器代码实例
2018/08/05 Python
Scrapy使用的基本流程与实例讲解
2018/10/21 Python
python爬虫 execjs安装配置及使用
2019/07/30 Python
Python itertools.product方法代码实例
2020/03/27 Python
Python实现区域填充的示例代码
2021/02/03 Python
C语言变量的命名规则都有哪些
2013/12/27 面试题
Java中有几种类型的流?JDK为每种类型的流提供了一些抽象类以供继承,请说出他们分别是哪些类?
2012/05/30 面试题
与C++相比,Java中的数组有什么不同
2014/03/25 面试题
大学毕业的自我鉴定
2013/10/08 职场文书
专科毕业生自我鉴定
2013/12/01 职场文书
委托书的格式
2014/08/01 职场文书
组织生活会表态发言材料
2014/10/17 职场文书
护士医德考评自我评价
2015/03/03 职场文书
2015年体育教师个人工作总结
2015/05/12 职场文书
卫生主题班会
2015/08/14 职场文书
HAM-2000摩机图
2021/04/22 无线电
微软PC Health Check电脑健康状况检查应用下载(Win11配置检测工具)
2021/06/26 数码科技
python的html标准库
2022/04/29 Python
vue ant design 封装弹窗表单的使用
2022/06/01 Vue.js
JS前端轻量fabric.js系列之画布初始化
2022/08/05 Javascript