Python | 练习作业 2

为学生登录系统新增搜索功能。

第二天作业的解题思路:

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("输入回车返回菜单:")        
相关推荐
陌小呆^O^4 分钟前
Cmakelist.txt之win-c-udp-server
c语言·开发语言·udp
Gu Gu Study10 分钟前
枚举与lambda表达式,枚举实现单例模式为什么是安全的,lambda表达式与函数式接口的小九九~
java·开发语言
时光の尘25 分钟前
C语言菜鸟入门·关键字·float以及double的用法
运维·服务器·c语言·开发语言·stm32·单片机·c
以后不吃煲仔饭39 分钟前
Java基础夯实——2.7 线程上下文切换
java·开发语言
进阶的架构师40 分钟前
2024年Java面试题及答案整理(1000+面试题附答案解析)
java·开发语言
前端拾光者44 分钟前
利用D3.js实现数据可视化的简单示例
开发语言·javascript·信息可视化
程序猿阿伟1 小时前
《C++ 实现区块链:区块时间戳的存储与验证机制解析》
开发语言·c++·区块链
戎梓漩1 小时前
windows下安装curl,并集成到visual studio
ide·windows·visual studio
傻啦嘿哟1 小时前
如何使用 Python 开发一个简单的文本数据转换为 Excel 工具
开发语言·python·excel
大数据编程之光1 小时前
Flink Standalone集群模式安装部署全攻略
java·大数据·开发语言·面试·flink