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使用urllib模块的urlopen超时问题解决方法
Nov 08 Python
python使用super()出现错误解决办法
Aug 14 Python
Python实现打印螺旋矩阵功能的方法
Nov 21 Python
python学习笔记之列表(list)与元组(tuple)详解
Nov 23 Python
python机器学习理论与实战(一)K近邻法
Jan 28 Python
浅谈Python3 numpy.ptp()最大值与最小值的差
Aug 24 Python
django 数据库连接模块解析及简单长连接改造方法
Aug 29 Python
Python学习笔记之函数的参数和返回值的使用
Nov 20 Python
基于Tensorflow使用CPU而不用GPU问题的解决
Feb 07 Python
python中数据库like模糊查询方式
Mar 02 Python
Python如何避免文件同名产生覆盖
Jun 09 Python
python Socket网络编程实现C/S模式和P2P
Jun 22 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
《APMServ 5.1.2》使用图解
2006/10/23 PHP
php空间不支持socket但支持curl时recaptcha的用法
2011/11/07 PHP
PHP基于php_imagick_st-Q8.dll实现JPG合成GIF图片的方法
2014/07/11 PHP
php cli模式下获取参数的方法
2017/05/05 PHP
PHP实现求两个字符串最长公共子串的方法示例
2017/11/17 PHP
PHP getName()函数讲解
2019/02/03 PHP
ThinkPHP中图片按比例切割的代码实例
2019/03/08 PHP
解决IE下select标签innerHTML插入option的BUG(兼容IE,FF,Opera,Chrome,Safari)
2010/05/13 Javascript
jquery实现漂浮在网页右侧的qq在线客服插件示例
2013/05/13 Javascript
解析js原生方法创建表格效率测试
2013/07/08 Javascript
js 处理数组重复元素示例代码
2013/12/27 Javascript
如何调试异步加载页面里包含的js文件
2014/10/30 Javascript
基于jQuery实现最基本的淡入淡出效果实例
2015/02/02 Javascript
图片旋转、鼠标滚轮缩放、镜像、切换图片js代码
2020/12/13 Javascript
基于jQuery实现的无刷新表格分页实例
2016/02/17 Javascript
JavaScript实现点击按钮字体放大、缩小
2016/02/29 Javascript
JavaScript模拟数组合并concat
2016/03/06 Javascript
JavaScript File分段上传
2016/03/10 Javascript
基于javascript实现页面加载loading效果
2020/09/15 Javascript
javascript使用闭包模拟对象的私有属性和方法
2016/10/05 Javascript
js 将input框中的输入自动转化成半角大写(税号输入框)
2017/02/16 Javascript
微信小程序图片横向左右滑动案例
2017/05/19 Javascript
Node.js  REPL (交互式解释器)实例详解
2017/08/06 Javascript
Vue 事件的$event参数=事件的值案例
2021/01/29 Vue.js
python直接访问私有属性的简单方法
2016/07/25 Python
Python使用folium excel绘制point
2019/01/03 Python
django 类视图的使用方法详解
2019/07/24 Python
详解Python中pyautogui库的最全使用方法
2020/04/01 Python
Python类super()及私有属性原理解析
2020/06/15 Python
Python中读取文件名中的数字的实例详解
2020/12/25 Python
百思买美国官网:Best Buy
2016/07/28 全球购物
岗位职责定义及内容
2013/11/08 职场文书
个人求职自荐信范文
2015/03/06 职场文书
浅谈Python中的函数(def)及参数传递操作
2021/05/25 Python
Windows Server 2012 R2 磁盘分区教程
2022/04/29 Servers
移除Selenium中window.navigator.webdriver值
2022/06/10 Python