python实现学员管理系统


Posted in Python onFebruary 26, 2019

python实现学员管理系统这个小程序是我刚刚接触python时,导师带着做的第一个小项目。通过这次练习,我学会了很多东西。下面是具体的代码和要求

'''
学员管理系统1.0版本
1.添加学员
    1.1 输入要添加的学员
    1.2 将学员添加到列表中
2.修改学员
    2.1 输出所有的学员及学员索引(从1开始输出)
    2.2 选择要修改的学员索引,判断索引是否在范围
    2.3 输入要修改的值,根据选择的索引进行修改
3.删除学员
    3.1 根据序号删除学员
        3.1.1 输出所有的学员及学员索引(从1开始输出)
        3.1.2 选择要删除的学员索引,判断索引是否在范围
        3.1.3 根据索引删除学员
    3.2 删除所有学员
4.查询学员
    4.1 输出所有的学员及学员索引(从1开始输出)
0.退出程序
''' 

具体功能代码如下:

def add_stu():
  """
  添加学员
  :return: None
  """
  name = input('请输入要添加的学员姓名:')
  # 将输入的姓名添加到students列表中
  students.append(name)
 
def query_stu():
  """
  查询所有学员
  :return: None
  """
  # 遍历列表
  print('*********学员信息如下所示:*********')
  for x in range(0, len(students)):
 
    name = students[x]
    print('*  索引号:%s,姓名:%s  ' % (x+1, name))
 
def modify_stu():
  """
  修改学员
  :return: None
  """
  # 1.执行查询学员操作
  query_stu()
  # 2.选择要修改的学员索引,并判断索引是否在范围
  idx = int(input('*  请输入要修改的学员索引:'))
 
  while idx < 1 or idx > len(students):
    # 重新输入要修改的索引
    idx = int(input('*  索引有误,请重选:'))
  # 3.根据选择的索引,修改列表中的数据
  name = input('*  请输入修改后的姓名(%s):' % students[idx-1])
  # 修改索引对应的数据
  students[idx-1] = name
  print('*  修改成功!')
 
 
def delete_stu():
  """
  删除学员
  :return: None
  """
  # 1.根据索引删除单个学员 2.删除所有学员
  print('*  a.根据索引删除')
  print('*  b.删除所有学员')
 
  select = input('*  请选择您的删除方式:')
  while select != 'a' and select != 'b':
 
    select = input('*  选择有误,请重选:')
 
  if select == 'a':
    # 根据索引删除
    # pass 作用为了保证代码完整性,使用pass代替未完成代码可以让程序不报错
    # 1.输出所有学员信息
    query_stu()
    # 2.选择要删除的学员索引,判断索引是否在范围
    idx = int(input('*  请输入要删除的学员索引:'))
    while idx <1 or idx > len(students):
      idx = int(input('*  请输入要删除的学员索引:'))
 
    # 确认是否要删除
    is_del = input('*  确认要删除(%s)?y/n:' % students[idx-1])
 
    if is_del == 'y':
 
      # 3.执行删除
      del students[idx-1]
 
 
  else:
    # 删除所有学员
    # del students[:]
    # for x in range(0, len(students)):
 
      # del students[0]
      # pop() 如果不指定索引,一直移除列表中最后一个元素
      # students.pop()
    # while 循环删除
    # 当len(students) 为0时,相当于写了一个False,表示条件为假,循环结束
    while len(students):
      students.pop()
 
# 定义一个用来存放所有学员信息的容器
students = []
 
 
# True(可以用数字1表示) False(可以用数字0表示) 布尔类型数据
while True:
 
  print('********学员管理系统V1.0*********')
  print('*     1.添加学员      *')
  print('*     2.修改学员      *')
  print('*     3.删除学员      *')
  print('*     4.查询学员      *')
  print('*     0.退出程序      *')
  select = int(input('    请选择您的操作:'))
 
  while select <0 or select > 4:
    select = int(input('    选择有误,请重选:'))
 
  print('**********************************')
  if select == 1:
    print('执行添加学员操作')
    add_stu()
 
  elif select == 2:
    print('执行修改学员操作')
    modify_stu()
 
  elif select == 3:
    print('执行删除学员操作')
    delete_stu()
 
  elif select == 4:
    print('执行查询学员操作')
    query_stu()
  else:
    print('*   感谢您的使用,下次再会!   *')
    break

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

Python 相关文章推荐
Python中列表、字典、元组、集合数据结构整理
Nov 20 Python
Python实现拼接多张图片的方法
Dec 01 Python
python中的__slots__使用示例
Feb 26 Python
python snownlp情感分析简易demo(分享)
Jun 04 Python
利用python模拟sql语句对员工表格进行增删改查
Jul 05 Python
Python cookbook(数据结构与算法)根据字段将记录分组操作示例
Mar 19 Python
详解Django rest_framework实现RESTful API
May 24 Python
python 读取摄像头数据并保存的实例
Aug 03 Python
python线程安全及多进程多线程实现方法详解
Sep 27 Python
Python3 中sorted() 函数的用法
Mar 24 Python
Python scrapy爬取小说代码案例详解
Jul 09 Python
pandas实现导出数据的四种方式
Dec 13 Python
python实现电子产品商店
Feb 26 #Python
Python selenium根据class定位页面元素的方法
Feb 26 #Python
python实现诗歌游戏(类继承)
Feb 26 #Python
Python实现简单查找最长子串功能示例
Feb 26 #Python
基于Python实现用户管理系统
Feb 26 #Python
python selenium firefox使用详解
Feb 26 #Python
Django实现学员管理系统
Feb 26 #Python
You might like
mantis安装、配置和使用中的问题小结
2014/07/14 PHP
php5.4以下版本json不支持不转义内容中文的解决方法
2015/01/13 PHP
php获取linux命令结果的实例
2017/03/13 PHP
jquery中邮箱地址 URL网站地址正则验证实例代码
2013/09/15 Javascript
JavaScript新窗口与子窗口传值详解
2014/02/11 Javascript
$.each遍历对象、数组的属性值并进行处理
2014/07/18 Javascript
Nodejs实现的一个静态服务器实例
2014/12/06 NodeJs
JavaScript将数组转换成CSV格式的方法
2015/03/19 Javascript
JavaScript如何调试有哪些建议和技巧附五款有用的调试工具
2015/10/28 Javascript
利用webstrom调试Vue.js单页面程序的方法教程
2017/06/06 Javascript
JS图片预加载插件详解
2017/06/21 Javascript
vuejs使用FormData实现ajax上传图片文件
2017/08/08 Javascript
基于BootStrap的文本编辑器组件Summernote
2017/10/27 Javascript
解决vue2.0路由跳转未匹配相应用路由避免出现空白页面的问题
2018/08/24 Javascript
vue路由事件beforeRouteLeave及组件内定时器的清除方法
2018/09/29 Javascript
webpack 如何解析代码模块路径的实现
2019/09/04 Javascript
微信小程序swiper左右扩展各显示一半代码实例
2019/12/05 Javascript
vue 中 elment-ui table合并上下两行相同数据单元格
2019/12/26 Javascript
Jquery $.map使用方法实例详解
2020/09/01 jQuery
vue使用echarts画组织结构图
2021/02/06 Vue.js
[01:29:42]Liquid vs VP Supermajor决赛 BO 第一场 6.10
2018/07/05 DOTA
[01:38:19]夜魇凡尔赛茶话会 第五期
2021/03/11 DOTA
python开发之函数定义实例分析
2015/11/12 Python
python实战之实现excel读取、统计、写入的示例讲解
2018/05/02 Python
对sklearn的使用之数据集的拆分与训练详解(python3.6)
2018/12/14 Python
六行python代码的爱心曲线详解
2019/05/17 Python
python 魔法函数实例及解析
2019/09/25 Python
Python高级编程之消息队列(Queue)与进程池(Pool)实例详解
2019/11/01 Python
python 中 .py文件 转 .pyd文件的操作
2021/03/04 Python
美国高档百货Nordstrom的折扣店:Nordstrom Rack
2017/11/13 全球购物
村容村貌整治方案
2014/05/21 职场文书
社区党员公开承诺书
2014/08/30 职场文书
出租房屋协议书
2014/09/14 职场文书
离婚起诉书范本
2015/05/18 职场文书
python中__slots__节约内存的具体做法
2021/07/04 Python
不负正版帝国之名 《重返帝国》引领SLG手游制作新的标杆
2022/04/07 其他游戏