为学生登录系统新增搜索功能。
第二天作业的解题思路:
1.创建一个空列表保存搜索结果
2.让用户输入要搜索的内容
3.遍历学生信息,检查学生的id name age gender score
中的属性值 是否跟用户搜索的内容一致
4.如果有一致的属性 那么就将该学生信息添加到搜索结果列表中
5.打印搜索结果
python
# 学生管理系统-主页
# - * - * - * - * - * - * - * - * - * - * - * - * - * -
# 1.录入学员信息(单条学员信息使用字典保存)(所有学员信息保存在一个列表里)
# 2.删除学员信息
# 3.查询所有学员
# 4.退出系统
# - * - * - * - * - * - * - * - * - * - * - * - * - * -
#
stu_list = []
while True:
print("-*-*-*-*-*-*-*-*-*")
print("1.录入学员信息")
print("2.删除学员信息")
print("3.查询所有学员")
print("-*-*-*-*-*-*-*-*-*")
select = input("请输入你的选择:")
if select == "1": # "录入学员信息"
id = input("请输入学员学号:")
name = input("请输入学员姓名:")
age = input("请输入学员年龄:")
gender = input("请输入学员性别:")
score = input("请输入学员得分:")
stu = {"id":id,"name":name,"age":age,"gender":gender,"score":score}
stu_list.append(stu)
input("输入回车返回菜单:")
elif select == "2":# "2.根据学号删除指定学员信息"
# 使用学员数据删除学员
# del_id = input("请输入要删除的学员学号:")
# for stu in stu_list:
# if del_id == stu.get("id"):
# stu_list.remove(stu)
# break
# else:
# print("该学号不存在")
# 使用序号删除学员
del_id = input("请输入要删除的学员学号:")
for i in range(len(stu_list)):
stu = stu_list[i]
if stu.get("id") == del_id:
stu_list.pop(i)
break
else:
print("要删除的学号不存在")
input("要输入回车返回菜单:")
elif select == "3":# 3.查询所有学员
s = "学号\t姓名\t年龄\t性别\t得分\n"
for stu in stu_list:
s += f"{stu['id']}\t{stu['name']}\t{stu['age']}\t{stu['gender']}\t{stu['score']}\n"
input("输入回车返回菜单:")
elif select == "4":
# 1.创建一个空列表保存搜索结果
search_result = []
# 2.让用户输入要搜索的内容
data = input("请输入搜索的内容")
# 3.遍历学生信息,检查学生的id name age gender score中的属性值 是否跟用户搜索的内容一致
for stu in stu_list:
for value in stu.values():
# 4.如果有一致的属性 那么就将该学生信息添加到搜索结果列表中
if value == data:
search_result.append(stu)
break
# 5.打印搜索结果
print(search_result)
input("输入回车返回菜单:")