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实现文件名批量替换和内容替换
Mar 20 Python
Python实现Tab自动补全和历史命令管理的方法
Mar 12 Python
Python利用Beautiful Soup模块搜索内容详解
Mar 29 Python
用Python进行简单图像识别(验证码)
Jan 19 Python
python pandas 如何替换某列的一个值
Jun 09 Python
使用Python监视指定目录下文件变更的方法
Oct 15 Python
Python for循环与range函数的使用详解
Mar 23 Python
通过实例简单了解Python中yield的作用
Dec 11 Python
flask框架蓝图和子域名配置详解
Jan 25 Python
Python class的继承方法代码实例
Feb 14 Python
500行python代码实现飞机大战
Apr 24 Python
python在CMD界面读取excel所有数据的示例
Sep 28 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
PHP中使用socket方式GET、POST数据实例
2015/04/02 PHP
教你识别简单的免查杀PHP后门
2015/09/13 PHP
PHP扩展迁移为PHP7扩展兼容性问题记录
2016/02/15 PHP
jQuery-ui中自动完成实现方法
2010/06/10 Javascript
封装的原生javascript弹出层代码
2010/09/24 Javascript
仿猪八戒网左下角的文字滚动效果
2011/10/28 Javascript
js的onload事件及初始化按钮事件示例代码
2013/09/25 Javascript
angularJS 中input示例分享
2015/02/09 Javascript
基于insertBefore制作简单的循环插空效果
2015/09/21 Javascript
jQuery Ajax 全局调用封装实例代码详解
2016/06/02 Javascript
jQuery获取多种input值的简单实现方法
2016/06/20 Javascript
浅谈javascript中关于日期和时间的基础知识
2016/07/13 Javascript
原生js实现商品放大镜效果
2017/01/12 Javascript
Angularjs+bootstrap+table多选(全选)支持单击行选中实现编辑、删除功能
2017/03/27 Javascript
angular中使用Socket.io实例代码
2017/06/03 Javascript
详解JavaScript中的六种错误类型
2017/09/21 Javascript
微信小程序实现多选功能
2018/11/04 Javascript
JavaScript实现五子棋游戏的方法详解
2019/07/08 Javascript
js通过循环多张图片实现动画效果
2019/12/19 Javascript
js实现扫雷源代码
2020/11/27 Javascript
[48:41]VP vs VG Supermajor小组赛 B组胜者组决赛 BO3 第二场 6.2
2018/06/03 DOTA
[52:41]OG vs IG 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/20 DOTA
Python中用pycurl监控http响应时间脚本分享
2015/02/02 Python
Python3中多线程编程的队列运作示例
2015/04/16 Python
numpy.transpose对三维数组的转置方法
2018/04/17 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
Python绘图之柱形图绘制详解
2020/07/28 Python
Python使用grequests并发发送请求的示例
2020/11/05 Python
Python系统公网私网流量监控实现流程
2020/11/23 Python
细说CSS3中的选择符
2008/10/17 HTML / CSS
高二物理教学反思
2014/02/08 职场文书
教学个人的自我评价分享
2014/02/16 职场文书
化学系大学生自荐信范文
2014/03/01 职场文书
2015年教师师德师风承诺书
2015/04/28 职场文书
Android Rxjava3 使用场景详解
2022/04/07 Java/Android
Elasticsearch 数据类型及管理
2022/04/19 Python