'''
应用:学员管理系统
1.1 系统简介
需求:进入系统显示功能界面,功能如下:
-1、添加学员
-2、删除学员
-3、修改学员信息
-4、查询学员信息
-5、显示所有学员信息
-6、退出系统
系统共6个功能,用户根据自己需求选取
1.2 步骤分析
-1、显示功能界面
-2、用户输入功能序号
-3、根据用户输入的功能序号,执行不同的功能(函数)
3.1 定义函数
3.2调用函数
1.3 需求实现
1.3.1 显示功能界面
定义函数print_info,负责显示系统功能
1.3.2 定义不同功能的函数
1.3.2.1添加学员
-需求分析
1、接收用户输入学员信息,并保存
2、判断是否添加学员信息
2.1如果学员姓名已经勋在,则报错提示
2.2如果学员姓名不存在,则准备空字典,将用户输入的数据追加到字典,
在列表追加字典数据
3、对应的if条件成立的位置调用该函数
1.3.2.2 删除学员
-需求分析
按用户输入的学员姓名进行删除
1、用户输入目标学员姓名
2、检查这个学员是否存在
2.1如果存在,则列表删除这个数据
2.2如果不存在,则提示“该用户不存在”
3、对应的if条件成立的位置调用该函数
1.3.2.3 修改学员信息
-需求分析
1、用户输入目标学员学号
2、检查这个学员是否存在
2.1 如果存在,显示此学员信息,并供用户输入新的信息
2.2 如果不存在,则报错,并重新输入
3、对应的if条件成立的位置调用该函数
1.3.2.4 查询学员信息
-需求分析
1、用户输入目标学员姓名
2、检查学员是否存在
2.1 如果存在,则显示这个学员的信息
2.2 如果不存在,则报错提示
3、对应的if条件成立的位置调用该函数
'''
# 等待存储所有学员的信息
info = []
# 添加学员信息的函数
def add_info():
"""
添加学员
"""
# 接收用户输入学员信息
new_id = input('请输入学号:')
new_name = input('请输入姓名:')
new_tel = input('请输入手机号:')
# 声明info是全局变量
global info
# 检测用户输入的学号是否存在,存在则报错提示
for i in info:
if new_id == i['id']:
print('该学号用户已经存在!')
# return作用: 退出当前函数,后面的语句不执行
return # 如果不加return, 则后面的语句还会执行
# 如果用户输入的学号不存在,则添加该学员信息
info_dict = {}
# 将用户输入的数据追加到字典
info_dict['id'] = new_id
info_dict['name'] = new_name
info_dict['tel'] = new_tel
# 将这个学员的字典数据追加到列表
info.append(info_dict)
print(info)
# 删除学员信息的函数
def del_info():
"""删除学员"""
while True:
# 1. 用户输入要删除的学员的学号id
del_id = input('请输入要删除的学员的学号: ')
global info
# 2.判断学员是否存在: 如果输入的姓名存在则删除,否则报错提示
for i in info:
if del_id == i['id']:
del_flag = input('确定要删除吗? yes or no')
if del_flag == 'yes':
del info[id == del_id]
print('删除成功!')
print(info)
# 删除了目标学员信息后退出循环
break
else:
print('输入学员有误, 请重新输入')
# 修改学员信息的函数
def modify_info():
"""修改学员信息"""
while True:
# 用户输入要修改的学员学号
modify_num = int(input('请输入要修改的学员学号: '))
global info
# 检查这个学员是否存在,存在则打印学员信息,并按用户输入修改
for i in info:
if modify_num == int(i['id']):
print(f'该学员学号是{modify_num},'
f'姓名是{info[id == modify_num]["name"]},'
f'手机号是{info[id == modify_num]["tel"]}')
info[id == modify_num]["id"] = input('请输入学号:')
info[id == modify_num]["name"] = input('请输入姓名:')
info[id == modify_num]["tel"] = input('请输入手机号:')
print('修改成功!')
print(info)
break
else:
print('输入学员有误,请重新输入!')
# 查询学员信息的函数
def search_info():
"""查询学员信息"""
search_name = input('请输入要查找的学员姓名: ')
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"]}')
# 显示功能列表的函数
def print_info():
print('''
-1、添加学员
-2、删除学员
-3、修改学员信息
-4、查询学员信息
-5、显示所有学员信息
-6、退出系统
--------------------
''')
# 程序主功能循环函数
while True:
print_info()
user_num = int(input('请输入功能序号:'))
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('显示所有学员信息')
print_all()
elif user_num == 6:
exit_flag = input('确定要退出吗?yes or no')
if exit_flag == 'yes':
print('退出系统')
exit()
else:
print('请输入正确的序号!')
Python函数加强(学生信息管理系统)
最新推荐文章于 2024-04-30 11:15:00 发布