################## # 应用:学员管理系统 # 递归 # lambda 表达式 # 高阶函数 # 了解需求 # 一、学员管理系统 # 1.1系统简介 # 1.添加学员信息 # 2.删除学员 # 3.修改学员信息 # 4.查询学员信息 # 5,显示所有学员信息 # 6,退出系统 # 1.2 步骤分析 # 1.显示功能界面 # 定义不同功能的函数,操作学员信息,所有存储所有学员信息应该是全局变量,数据类型为列表。 # 1.3.1添加学员需求分析 # 1.接收用户输入学员信息,并保存。 # 2.判断是否添加学员信息 # 2。1如果学员名称已经存在,则报错提示 # 2.2 如果学员姓名不存在,则准备空字典,将用户输入的数据追加到字典,在列表追加字典的数据。 # 3. 对应的if 条件成立的位置调用该函数。 # 1.3.2 删除学员分析 # 1.用户输入目标学员姓名 # 2.查找这个学员是否存在: # 如果存在,则列表删除数据 # 如果不存在,提示该用户不存在 # 3.对应的if条件成立调用函数 # 1.3.3 修改学员信息 # 1.需求分析 # 1.输入学员姓名 # 2.检查这个学员是否存在 # 如果存在,则修改学员的信息,例如手机号 # 如果不存在,则报错 # # 3.对应的if条件成立的位置调用该函数 # 1.3.4 查询学员信息 # 1.输入学员信息 # 2.检查这个学员是否存在: # 如果存在,则修改学员的信息,例如手机号 # 如果不存在。则报错 # 3.对应的if添加成立的位置调用函数 info = [] def info_print(): print('-----------请选择功能-------------') print('1.添加学员信息') print('2.删除学员信息') print('3.修改学员信息') print('4.查询学员信息') print('5.显示所有学员信息') print('6.退出') print('--'*20) #系统功能需要循环使用,直到用户输入6,才退出这个系统。 #添加学员信息的函数 def add_info(): ''' 添加学员函数 :return: ''' new_name = input('请输入学员名称:') new_id = input('请输入学员编号:') new_tel = input('请输入学员手机号:') global info #检测用户输入的姓名是否存在,存在则报错提示 for i in info : if new_name == i['name']: #定义姓名不允许重复,可以设置为不允许id重复 print('该用户已经存在') return #退出当前函数 #如果输入的姓名不存在,添加数据,准备空字典。字典新增数据,列表追加字典。 info_dict = {} #声明一个空字典,要添加学员信息 info_dict['id']=new_id info_dict['tel']=new_tel info_dict['name']=new_name # print(info_dict) info.append(info_dict) #info.append(info_dict) print(info) def del_info(): ''' 删除学员函数 :return: ''' pass del_name = input('请删除您要删除的学员名称:') global info #声明全局变量 for i in info: if del_name ==i['name']: info.remove(i) #删除数据用的,remove。列表删除 print(f'{del_name}已经删除成功') break else: print('该学员不存在') print(info) def modify_info(): #修改学员信息 def mon ''' 修改学员信息 :return: ''' global info modify_name = input('请输入您的名字:') for i in info : if modify_name == i['name']: i['tel'] = input('请输入更改后的信息:') print(f'{modify_name}已修改成功') break else: print('该用户不存在') print(info) def search_info(): search_name = input('请输入目标学员的姓名') global info for i in info: if search_name == i['name']: print(f"您的学员id为{i['id']},您的姓名为{i['name']},您的学员手机号为{i['tel']}") break else: print('用户不存在') print(info) def list_info(): #显示所有信息 ''' 显示所有学员信息 :return: ''' print('姓名\t手机号\t学员编号\t') global info for i in info: print(f'{i["name"]}\t{i["tel"]}\t{i["id"]}\t') for i in info: print(f"{i['name']}\t{i['tel']}\t{i['id']}") print(info) while True: #显示功能界面 info_print() user_num=int(input('请输入功能序号:')) #如果用户输入1.执行添加,如果用户输入2.执行删除 if user_num == 1: #print('添加功能') add_info() elif user_num == 2: #print('删除功能') del_info() elif user_num == 3: # print('修改功能') modify_info() elif user_num == 4: # print('查询功能') search_info() elif user_num == 5: # print('显示功能') list_info() elif user_num == 6: #print('删除功能') 程序想要结束,终止while循环就行。 exit_ = input('确定要退出吗?yes or no\n:') if exit_ == 'yes': break else: print('您的输入不在功能范围之内,请重新输入1-6')