侧边栏壁纸
  • 累计撰写 119 篇文章
  • 累计创建 25 个标签
  • 累计收到 1 条评论

目 录CONTENT

文章目录

函数加强

梁来福
2022-02-09 / 0 评论 / 0 点赞 / 0 阅读 / 3260 字
温馨提示:
本文最后更新于 2024-05-06,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。

应用:学员管理系统

系统简介

需求:进入系统显示系统功能界面,功能如下:

  • 1、添加学员
  • 2、删除学员
  • 3、修改学员信息
  • 4、查询学员信息
  • 5、显示所有学员信息
  • 6、退出系统

系统共6个功能,用户根据自己需求选取

步骤分析

1、显示功能界面

2、用户输入功能序号

3、根据用户输入的功能序号,执行不同的功能(函数)

  • 定义函数
  • 调用函数

需求实现

显示功能界面

定义不同功能的函数

所有功能函数都是操作学员信息,所以存储所有学员信息应该是一个全局变量,数据类型为列表

info = []

添加学员
需求分析

1、接受用户输入学员信息并保存

2、判断是否添加学员信息

  • 如果学员姓名已存在则报错
  • 如果不存在则准备空字典,将用户输入的数据追加到字典

3、对应的if条件成立的位置调用该函数

代码实现

# 定义功能界面函数
def info_print():
    print('请选择功能:')
    print('1、添加学员')
    print('2、删除学员')
    print('3、修改学员')
    print('4、查询学员')
    print('5、显示所有学员')
    print('6、退出系统')
    print('-' * 20)

# 等待存储所有学员的信息
info = []

# 添加学员信息的函数
def add_info():
    """添加学员函数"""
    # 1、用户输入:学号,姓名,手机号
    new_id = input('请输入学号:')
    new_name = input('请输入姓名:')
    new_tel = input('请输入手机号:')

    # 2、判断是否添加这个学员:已存在提示已存在,不存在则添加数据
    global info

    # 2.1 不允许姓名重复:判断用户输入的姓名和列表里字典'name'对应的值相等
    for i in info:
        if new_name == i['name']:
            print('此用户已经存在')
            # return作用:退出当前函数,后面添加信息的代码不执行
            return

    # 2.2 姓名不存在添加数据,准备空字典,字典添加数据,列表追加字典
    info_dict = {}

    # 2.2.1 字典新增数据
    info_dict['id'] = new_id
    info_dict['name'] = new_name
    info_dict['tel'] = new_tel

    # 2.2.2 列表追加字典
    info.append(info_dict)

# 删除学员的函数
def del_info():
    # 1、用户输入要删除学员的姓名
    del_name = input('请输出要删除学员的姓名:')

    # 2、判断学员是否存在:存在删除,不存在则提示不存在
    # 2.1 声明info是全局变量
    global info
    # 2.2 遍历列表
    for i in info:
        # 2.3 判断学员是否存在,存在删除后break
        if del_name == i['name']:
            info.remove(i)
            break
    else:
        print('该学员不存在')

# 修改学员信息函数
def modify_info():
    modify_name = input('请输入要修改学员的姓名:')

    global info

    for i in info:
        if modify_name == i['name']:
           i['tel'] = input('请输入新的手机号:')
           break
    else:
        print('该学员不存在,无法修改信息')

# 查找学员信息的函数
def search_info():
    search_name = input('请输入要查找学员的姓名:')

    global info

    for i in info:
        if search_name == i['name']:
            print('查找到该学员的信息如下:')
            print(f"该学员的学号是{i['id']}, 姓名是{i['name']}, 手机号码是{i['tel']}")
            break
    else:
        print('该学员不存在')

# 打印所有学员信息函数
def print_all():
    print('学号\t姓名\t手机号')
    for i in info:
        print(f"{i['id']}\t{i['name']}\t{i['tel']}")

while True:
    # 1、显示功能界面
    info_print()

    # 2、用户输入功能序号
    pri_num = int(input('请输入功能序号:'))

    # 3、根据用户输入的功能序号,执行不同的功能(函数)
    if pri_num == 1:
        print('添加学员')
        add_info()
    elif pri_num == 2:
        print('删除学员')
        del_info()
    elif pri_num == 3:
        print('修改学员')
        modify_info()
    elif pri_num == 4:
        print('查询学员')
        search_info()
    elif pri_num == 5:
        print('显示所有学员')
        print_all()
    elif pri_num == 6:
        exit_num = input('您确定要退出系统吗?yes or no?  ')
        if exit_num == 'yes':
            break
    else:
        print('输入的功能序号有误,请重新输入---')
0
  1. 支付宝打赏

    qrcode alipay
  2. 微信打赏

    qrcode weixin
博主关闭了所有页面的评论